Documentation fixes, PEP8

* Fix a bunch of typos in the documentation
* Comparisons against singletons like None are to be done with `is`, not `==`
* `while 1` is sooo C
* iterators are fancy, don't convert it to a list and discard everything but the first element, use `.next()`!
* isinstance(foo, bar) is nicer than type(foo) == bar