Update/fix Python 3 support

* all: Changed sys.version checks to sys.version_info equivalents
* iters: Made Python 2-specific imports conditional
* op: Fixed _apply to work properly when args=None
* stream: Conditional maxint/maxsize usage in Python 2/3
* underscore: Conditional operator.div/operator.truediv in Python 2/3
* tests: Explicitly convert ranges to lists
* tests: Run tests if tests.py is called directly