added more S3 convenience functions based upon URIs
added ability to bypass GCLock when we know that a structure is immutable
started separating off signing logic from aws
added ability to perform Amazon v4 signatures and basic SQS service
Merge branch 'master' of github.com:datacratic/soa

Conflicts:
	gc/gc_lock.h
added missing commit from last merge
refactoring of AWS code to move more generic code and tests into soa
deal with strange extra newline at end of base64 digest
more sqs functionality
added set<> value description
remove debugging accidentally left in
fixed URL encoding in AWS service base
turned off debugging in AWS base
partially implemented SqsApi::deleteMessage (untested)
MessageLoop now defers all sources event to the main loop.

This ensures that MessageLoop never calls into uncontrolled code while
holding a lock which could easily lead to deadlocks.
SqsApi:: partially implemented addPermission and removePermission (untested)
SqsApi:: partially implemented changeMessageVisibility and changeMessageVisibilityBatch (untested)
SqsApi: use correct action names
sqs: finished implementation of base receiveMessage
added extractNode to xml_helpers