Wrapping up and adding S3 functionality