Merge pull request #714 from nevercast/bug-660

Modify profanity implementation. Fixes #660
Merge pull request #711 from nevercast/feature-serveredit

Feature: Server Edit Menu. Closes #677
Merge pull request #712 from godarklight/issue-652

Fix issue 652
Merge pull request #663 from godarklight/issue-126

Implement issue #126 (Server progress in %), Slight fix to handling the time skew message.
Let the DB do heavy lifting on a simple vessel count
Simplified message handling.
Change ping so it doesn't have a timeout and you can send more than 1.
Don't write a send/receive error over another disconnect message.
Delay starting the map until receiving a MOTD, this means you won't quickly connect and disconnect if the username is taken.
Protect UDP messages from null bytes.
Use a warp average variable to avoid "Collection was modified" exception
Protect handshake from byte[0] and null.
Update client receive timestamp on tcp receive too.