Complete Python 3 support

Resolves #53. Thanks @takluyver for doing most of the hard work!

Also resolves #57 (writing variable length unicode strings in NetCDF4), since at some point I thought it would be convenient for Python 3. That turned out to be a tangent, but I'm happy I wrote it anyways.