yet another attempt to make java's type system less awful. because nothing says "fun coding" like "bounded polymorphism"... https://www.reddit.com/user/BlueGoliath