Test branch
Remove test
Trying to use polymorphism
Moved SendDeviceList to User Class
Major changes

- Each command is a new class that is a child of the command base class
- All functions that are used to communicate with the user are moved to
the user class
- UserConnection class is not needed since everything can be done in the
User class
- CommandParser is changed to return different command objects that
inherit from command class
CommandHandler Changes

- Implemented Execute() for Invalid command
Small Change

- Accept input from user as it is
Constructors for each child Command
Fixed TCP Receive function

- Format checking for length prefix
Close Socket
Changes in TCP Client

- Add length to user input
- Remove '.' from command string
Added function to Prepend Length
Used existing function
Small change in SendDeviceList()

- Notify user when no devices are connected
Changes in TCP Client

- Added function to reformat input string:
ID, DestID and State are input by the user as numbers, and the function
changes them to bytes for transmission
Removed functions from ConnectionManager

- Each function is moved to its respective class
Updated commands

- Functions moved from ConnectionManager to each Command child class
Moved HandleConnection to Device class
Private -> public

flipped some private functions to public ones!!!
Small fix

- Using D.HandleConnection()