fix typo bug in args.command
Adding debugging output flag
Adding support for result data from commands
Updated to reflect split nature of project
Added support for output from system commands. Kept working on file requests, currently not functional
Add a lot of command documentation to online help and README
Add a lot of command documentation to online help and README
Renamed ERC.system_control_command to ERC.execute_command now that status read commands are supported.

Updated the docs of motocommand's JWAIT to clarify that it applies to currently running jobs.

Added a debug flag to motomessage.
minor aesthetic changes
new command motofile

new command motofile for transferring files with the robot
fixed example

updated example so that it makes more sense.
major overhaul for file IO, bug fixes

- some minor aesthetic change to comment on DLE constant
- overhaul of TRANSACTIONS dict, values now follow a standard format
which can be programmatically analyzed
- pep8 and pylint compliance
- updated encode function, added support for sending transfer filename
as the first packet of a multipacket transfer
- updated encode function to fix an off-by-one error
- created a header_code_lookup function which references the newly
revised TRANSACTIONS dict
- added a filename_to_jobname function which applies basename, splitext
- added handler for file requests
- added a short_message function for sending a single packet message
- fixed handle_incoming_file function to properly include \r\n in job
files and \r after the job name, switched it to the new short_message
function for sending transfer confirmation
- finished the initial version of the handle_file_request method
- added transmit_file_data function, which sends file contents more
easily
- added get_file function which sends a request for a file and receives
the reply
- added put_file function which sends a file to the ERC and receives
the confirmation
- removed servo power, start, & hold functions which are redundant at
this level
- added “once” option to the loop function for the purpose of running a
single loop iteration only
Updated docs

Added doc update for the new program motofile.
new command motomove directly positions the erc manipulator over the serial connection
- Added documentation for a few un- or under- documented ERC commands (see the MRC communications docs)
- Plugged-in support for the erc lib's new RSTATS decoding function
overhauled to use dict-dispatch, minor refactoring

- switched from conditionals to dict-dispatch to handle modes. the
static analysis is very happy.
- refactored the jobname to rootname in line with an etc overhaul
major overhaul

- Ripped out the read_multipacket_message function and replaced it with
the read_message function. This eliminates redundant code an provides a
more consistent way to read multi-block messages.
- refactored and clarified names. this is mostly reflected in the
change Packet -> Message, in the new language a message is sent between
machines, it can consist of multiple blocks.
- handlers now accept the a message named tuple instead of separate
header and message body arguments
- removed the transmit_file_data function and incorporated that
functionality elsewhere
- added an option to specify a header to the get_file function, this is
useful in speculative get_file requests
- eliminated a bug where error results to the execute_command function
were reported twice (and in unattractive ways)
- removed the “once” option to the loop function
- dropped packet_length from the Message named tuple
- added a ControlChar named tuple to encapsulate a control character.
this is mostly unimplemented
- Added a proper constructor for InvalidTransaction exception. It makes
instantiating the Exception cleaner. Formatting is more consistent.
- Changed many instances of “blah {} blah”.format(somevar.__repr__())
to “blah {!r} blah”.format(samovar). This is cleaner, shorter syntax.
- Changed some instances of calls to .format into string concatenations
- Added the decode_rstats function to make it easier to process results
of the RSTATS call both programmatically and when reading them manually
- Changed the nomenclature in the encode function: transaction_code ->
header_code
- Took yet another crack at eliminating the ongoing off-by-one error in
the encode function
- changed the name of the filename_to_jobname function to
filename_to_rootname, this better reflects that non-job files are also
processed by this function
- Added the namefix function from the motodisk command. this changes
the internal job name in a job file so that it matches the on-disk
filename.
- Added a function to do reverse-lookups on the TRANSACTIONS dict. This
returns a filename extension associated with the given transaction code
- improved some function inline documentation
Updated docs to reflect 2014-11-11 update.
- Updated inline and offline documentation to reflect current math operator syntax
upstream Merge branch 'master' of https://github.com/glvnst/yasnac