Bucket lifecycle API interface

AWS Docs: 
http://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html

This implements the bucket lifecycle API interface.  Some refactoring was needed because it requires V4 signatures and the `x-amz-content-sha256` header.