Updated NetworkLayer to use start() for InputListener
Added the Server class and the parent Device class
Decoupled UI logic from the Host class for use with Server