Added a start screen, fixed a few bugs.

Added a start screen which allows you to select the serial device
to connect to. This will be expanded in the future. It is a little
cumbersome since I would rather not use ControlP5 (I have had
annoyances with keeping track of ControlP5 versions in the past,
I guess I could have tried a different gui lib). Hitting esc will
return you to the start screen. Hitting esc again exits.

stroke weight changing while drawing. during draw (when there was a
print event) the stroke weight would be set to 1, and during mouse
interaction the drawing actually happened. Now stroke weight is set
immediately before it is used.

Strokes would turn white sporatically when using a short print interval.
It seemed like there was a threading issue between mouse events and
serial events. all interactions with the 'drawing' canvas are now
wrapped in lock/unlock.