Initial usb changes.
Minor makefile/XCode project changes.
Added stopOnMatch (partially) and corrected timing for UpDown modes in Motate::Timer.
Fixed up Motate licensing.
Porting in Motate USB changes. (Preliminary, still.)
Added a readByte() and stub begin()/end() in USBCDC.
Now compiling (NOT running) without the Arduino code.

Well … I *did* move some of the support files into platform/atmel_sam.

Also, I put some sam-specific stuff into main.cpp, and that needs moved back out.
Checkpoint on USB changes. Need endpoint configurations still.
Fairly extensive changes to get USB working. Still not quite there.

It enumerates on OS X, but doesn't present the CDC interface yet.
USB on SAM is now enumerating and *initially* sending data to host.

The device is able to receive data, it appears, but no longer send.

A LOT of cleanup is still necessary, primarily removal of all vestigial Arduino/libsam code.

A major focus of rework needs to do with endpoint (and related buffer) size testing.
Endpoint auto-sizing partially complete. (DOES NOT ENUMERATE!)
Fixed not enumerating. Two way communication is still broken.
Fixed read error. Now talking both ways. :)
Removing dependency on libsam, and rewriting all USB I/O routines. *Currently Broken*
Enumerating, reading, and writing USB Serial.

There's some buffer flushing issues still, but it's very very close.
Got it! Writing to the host should now be error free.

Reading large data from the host needs more testing.
Merge branch 'alden' into rob

Conflicts:
	TinyG2/stepper.cpp
	TinyG2/switch.cpp
Fix minor merge oversight.
Cleanup return values in read routine.
Got it working! Read and write of large amounts of data appears to work.

It was a mismatch of advertised endpoint size and configuration.