* Hz vs. Bq, gray vs. sievert... they are equivalent, but mean different things. What to do?
* Built-in python time units should box/unbox with time quantities
* In general, python objects that refer to quantities should play nicely with this module...
-* the __round__ protocol seems to be py3k only...
* Instead of hasattr'ing parameters and using asserts to determine whether we can convert units or not, we could instead just do the conversion we want to do, raising a NotImplemented upon failure.
* Generalize beyond string specifications
* better within_epsilon that takes into account magnitude of its parameters
-* py3k port/compatibility
* test coverage to 100%... but Figleaf's output cannot be trusted.
* Use polymorphism to get rid of the hasattrs that effectively switch on the type of the unit
* Get rid of the rest of the hasattrs