Reformatted README a little.
Rolled back my nutty idea of unifying all hosting and consuming funcs.

I go back and forth on it.  I can't decide which is easier to read, understand,
maintain, and use.  Giving each function its own single purpose is obviously
more maintainable and less ambiguous, so lets stick with that.  I'm just sorry I
wasted Tom's time with my inaccurate descriptions and ridiculous ideas.
Converted "-update-timestamp" string literal to function.
Minor naming and functional fixes.

- Be more restrictive in type checks.

- Santiago.replace_consuming_location takes three parameters and
  doesn't (shouldn't) assume the Santiago service.

- Function naming fixes:

  - Santiago.create_consuming_host -> Santiago.create_consuming_service
  - Santiago.get_services -> Santiago.get_consuming_service

- Renamed request_list to requests.
Started work on data model version 3.
Clarified data model a little.
First pass at finishing data model v2, including update times.

Each message that updates a service's locations also contains a sent time.  The
service's locations are updated only when the message's sent time is newer than
previous messages (and not in the future).
Changes required to actually complete a message exchange:

- Working directory is / instead of src/.
- Fixed CliSender.outgoing_request.
- Lowercase sender and reciever actions.
- Moved private functions from utilities to santiago_run.
- Exchanged dateutil with time.time.
Merge remote-tracking branch 'upstream/master'

Conflicts:
	src/santiago.py
	src/santiago_run.py
	start.sh
Fixes/changes to test to reflect latest changes.