Turned ball.py into class to make development easier.

Class BallFinder now only does the vision processing, meaning that the algorithm
can be used on board the BBB and for development with a monitor.

A helper function is used to call the class and plot it on screen when used from the command line.
Much neater implementation.
Take colour argument to track both red and blue.
Tcpserver.py skeleton adapted to call classes to do the vision processing.
Example of task switching between threads added.
improved contour detection

improved ball tracking and explanations

introduced distance contour relationship

Goal Tracking-(adaptive thres unstable)
balltracking ready to be paired with the Beagle bone

returns coordidnates of goals
Merge new tcp code with ball.py updates.