Created baseline code

EncoderRobotDrive
PID work in progress
Added PID
Adding PID for distance

Not working for some reason.
Position PID working

Working...
PID for Position/Rotation

position works only backward.
rotation works both ways.
PID parameters are not tuned/hardcoded.
PID parameters must all be negative.
Working PID for Position/Rotation

position works backward, not forward.
rotation works both ways.
tuned pid parameters are not stored.
functional and quick PID for position/rotation

PID Tuning:

If   Pulses/Distance = 3000
Then 1 UNIT = 8.64 feet.
= (3000/360)

For PID Rotate:
P = -7.00
I = 0.0
D = 0.0

For PID Straight:
P = -3000
I = 0.0
D = 0.0

For Chassis PID, BOTH SIDES:
P = 0.0
I = 1000.0
D = 0.0
Cleaned up code
added MoveTo code

in order to make this work, change the drivestraight and rotate commands
so that their isFinished methods actually work.
Fixed + Add

Added min. velocity to DriveStraight, similar to Rotate.
Fixed compile issues
Optimized Rotate; Support finalAngle in MoveTo.
Deleted objects when Rotate is over.
disregard this commit.
Revert "disregard this commit."

This reverts commit b370327afa50ba404f7079e1d613e3917d4ca9bd.
Lots of code cleanup. Not fully functional.

Smart Robot is broken. Velocity PID Controller doesn't work - needs
attention. Simple (dumb) tank drive works though.
Velocity PID still broken. Unit tests for commands.

This commit is not tested on the bot. Unit tests now should be called
clicking on a button in the SmartDashboard (no Joystick buttons). The
logic of the speed maintaining controllers is still broken. Maybe
PIDController is not the best choice for that.
Tested and debugged on the bot. PID not working
VelocityController = smart chassis

Not been tested on the bot. Drive straight should be fixed now. Might
need tuning "reversed" flags. The old EncoderRobotDrive is removed.
ExampleSubsystem is also removed.
Working velocity code

Check the math. It works, but it's not pretty.