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