Enhanced PID algorithm

Enhanced PID algorithm based on the series of blog posts at http://brettbeauregard.com/blog/2011/04/improving-the-beginners-pid-introduction/
Specifically:
    1. Avoid derivative kickback - http://brettbeauregard.com/blog/2011/04/improving-the-beginner%E2%80%99s-pid-derivative-kick/
    2. Allow smooth on-the-fly tuning changes - http://brettbeauregard.com/blog/2011/04/improving-the-beginner%E2%80%99s-pid-tuning-changes/
    3. Reset windup mitigation - http://brettbeauregard.com/blog/2011/04/improving-the-beginner%E2%80%99s-pid-reset-windup/
    4. Bumpless initialization - http://brettbeauregard.com/blog/2011/04/improving-the-beginner%E2%80%99s-pid-initialization/
Bugfix: added resetPID() call in RESET_ENCODERS statement,
to ensure that PID gets reset when encoders get reset.
Bugfix - removed reset wind-up fix

Removed the reset windup prevention code, as the old code already
took care of that by only incrementing Ierror when output was not being clamped.
Fixed spelling typo in arduino_node.py
Deleted extraneous ROSArduinoBridge.cpp file
Merge pull request #6 from KristofRobot/enhancedPID

Enhanced PID algorithm
Removed unused self.shutdown variable in arduino_driver.py
Support for TinyQED Wheel Encoder Counter

Added support for TinyQED Wheel Encoder Counters.
See https://github.com/renbotics/TQED
UPDATE: updated to be in line with original TQED function return value conventions (i.e. bool rather than void for resetCount()), and renaming back to TQED, rather than TQED2