removing backspace dependency for now (fixing circular dependency issue)
allowing s3 endpoint to be passed in as a proc