Python 3 compatibility without 2to3

This pull request changes `pydl` to have a Python 2 and 3 compatible codebase without needing to run `2to3`, as recommended in the [astropy docs](http://docs.astropy.org/en/stable/development/codeguide.html?highlight=python#writing-portable-code-for-python-2-and-3).

There's a lot of lines changed, but most are the simple `print "something"` to `print("something")` change.
Thanks for the comment. I can update this, but I think we should wait for @weaverba137 to say whether he wants this PR at all before we spend more time on it.