Fixed a rendering issue with movement/todo.md.
Added a zmq python demo.
Fixed the demo zeromq code to use a non-blocking approach.
Updated .gitignore to ignore vim, Python, and C++ byproducts.
Added configuration_settings.json.

This is a first jab at a settings file. I'm giving it a very restrictive
name to suggest that other types of settings can (and should) exist in
a similar file.
Started grapevine.py, which defines a communication object.

This is untested, not fully featured, and incomplete.
Added publisher and subscriber contexts.

Again, this isn't tested/working (class calls).
Communicator object now works.

This includes basic functionality. I still need to do a proof read and
add comments before sending it through a review process however.
Release candidate 1 for grapevine.py.

This introduces a communication protocol for robosub modules.
Made minor modifications based on cevans87's CR.
Fixed a usability issue with grapevine.py.
Merge branch 'user/LoganEvans-structure' into user/BigDCross-logger

Conflicts:
	src/util/communication/test/mock_bar.py