Write a few exported interface docstrings
Move deserialization into Unit.Deserialize()

This will make partial unit update packets easier in the future.