Create an API package

A lots of classes/functions will move into this package soon

I will use it to begin the development of the new client-server
architecture.
Add API for client-server architecture

The architecture is ready to be incorporated in QCodeEdit
Fix response received log message
Add support for frozen server scripts (Windows)
Integrate the new client-server

and fix a few issues with __del__
More fix to __del__ to ensure the socket is closed
Run the server in the functional test
Add a helpers module to the testing package
Add a server script to the testing package
Adds an integration test for the server api
Test python2 to interpret the server script
Add no-capture flag to debug tests on travis
Do not run python2 interpreter on PY27 env
Cleanup travis.yml (no need to install pyside)
Remove unused server_forever override

Unused and causes problems on travis
Refactoring: move qprocess methods to a new class
Avoid runtime errors for delelted c++ wrapped obj
Its better to explictely close the socket.
Fix AttributeError:

'JsonTcpClient' object has no attribute '_process'
Server process might not exist if not started