Factor out Firmata parsing into its own class.

This should make it useable from Java code that doesn't use Processing. This still needs some work to make it properly robust: handling reconnections, notifying the user of errors, etc. Still, the basic Arduino library examples for Processing still seem to work.
Support more boards. Add example for input from Arduino Mega.

Query the analog mapping to find out how many analog channels there are, and request that all of them be streamed. Enable all 16 possible digital ports; the firmware won't send ones that don't exist.

Also, changed to explicitly call the Firmata processInput() function from the serialEvent() function called by Processing, rather than having Firmata spawn a separate thread to poll the serial port input stream.
Build .zip file and up version number.
Update to work with new serial library in Processing 2.1.

Removes all dependency of the Firmata class on InputStream or OutputStream. Instead, it just gets bytes and has a function to pass bytes to.
Add servoWrite() to support Servo motors.