Add basic functional test
This MR adds a basic functional test, this one is plugged to the CI with the coverage report of unit and functional tests.
First, that work will allow to make change to improve the spot speed without breaking spot features, then easily we can bench the main API.
Extra: the deprecated pep8 tool is updated to pycodestyle.