Major refactoring

Technical Description:
- New UnknownLogger logging framework on server, will patch over on
client
- Switched most enhanced for loops to a regular for
- Major code cleanup on the Client. UnknownClient no longer has
implementation-specific variables, and DualstackClient now extends
UDPClient
- Bug fixes