Add parallel, experimental and highly unstable TCP socket implementation
Add rpc test
Update CMakeLists.txt
Add rpc subfolder
Merge branch 'master' into rpc

Conflicts:
	engine/tests/CMakeLists.txt
Delete ConsoleServer
Delete rpc test
Initialize IDs in ctor and add begin()
Split IP address from port number
Add execute_string()
Delete TCPSocket.cpp
Refactor TCPSocket
Remove KC_COUNT from keyboard keys
Remove TCPSocket.cpp from CMakeLists.txt
Add clear() to StringStream
Delete old python console
Merge TCP and UDP sockets into Socket.h
Improve RPCServer: use IDs instead of raw pointers and better manage incoming connections
Use ClientId and add RPCCommandHandler
Add RPCServer to Device