Added client names

Aethetic changes //todo, clean up code
Added a router with event subs

Creates better separation and cleaner code. Other files still severly
lacking.