Uses pynetlinux properties now
server -> keyoffset and added classmethods
Cleaned up comments and reorganized operations
Tunnel --> Codec > Server + Client
Added set_seek method to Pad
Removed socket import (no longer used)
Updated the script to use the new codec module
Updated the imports in __init__.py
Now uses context managers
Added encode/decode block todos
Fixed wrong superclass for Server, Client
Simplified fetching encode/decode blocks
Simplified code... a lot
Further cleanup
Made comments more sussinct
Renamed divide --> _divide
Removed _offset_length
Simplified docstrings
More cleanup
Takes stepping into account properly