Fix removeNameSpace parsing problem

removeNameSpace cannot work correctly when there are more than one
white space after XML decaration in response message. Fix it.
Always attempt to set the content-type
refactor content_type() and add object_replace(), tests

Addresses issues #214, #409, and incorporates pull request #406.

content_type() was trying to do too many things in line, making it
hard to read.  Split the part that gets the mime-type via reading a
file into a helper function.  This lets the command-line-provided
--mime-type override file-detected methods.

Raise ParameterError if file is stdin and no --mime-type or
--default-mime-type has been provided.

Split object_replace() out from object_copy().  Yes, they are
similar.  No, they're not identical.  This lets us change the MIME
type of a file via 's3cmd modify'.

Add test cases to change the MIME type via 's3cmd modify'.
Merge pull request #386 from hrchu/bug/cannotMoveLargeFile

Fix removeNameSpace parsing problem
Changed prices

Prices were out of date, copied from http://aws.amazon.com/s3/pricing/
Minor changes in README to fix points 1 and 2 in my comment at https://github.com/s3tools/s3cmd/pull/369.
Specify content-type for request with XML body

- DELETE Multiple
- PUT ACL
Fixed bug where the error report will not show if there was an import error due to dependency on unicodise which was not successfully imported
Changed the exit code for import errors to not rely on dependency of EX_GENERAL being defined when not imported
Specify default checks performed on files being synced

Debian bugreport: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=534733
Cosmetic: removed one empty space in excess of end of run summary.
Fix MD5 comparison with s3 compatible servers that are not Amazon S3.

Some servers (like fakes3), doesn't add quotes in ETags aroung md5 value.
Ex.:
AWS: <LastModified>2014-06-05T09:45:25.000Z</LastModified><ETag>&quot;fc0f71ccc63dda0efc30239b48bdeccd&quot;</ETag><Size>132947133</Size>
FAKES3: <LastModified>2014-06-05T09:58:35.982060ZZ</LastModified><ETag>fc0f71ccc63dda0efc30239b48bdeccd</ETag><Size>132947133</Size>
(Nota: &quot; <=> " )

Bug in the previous code was always striping and first and last characters whatever they were. Such, in a fakes3 case, dest md5 was truncated and so would never match.
In the same time, this patch normalize the behavior to always strip " and ' chars in all the code dealing with etags.
Small cleanup of code, using "in" instead of "find" for strings when possible.
Fix an error in my previous commit: b5b61abc8eb159f5932b936c7ca47e618615f6a3. (.find() forgotten to be removed)
Improve the exit code of s3cmd in the case of an error from S3 to give a clearer status of the reason of the failure. Some existing exit codes were modified when they were not already in use.
Disable dns support for buckets when "host_bucket" hostname doesn't have a %(bucket)s item in it.
Merge pull request #430 from fviard/pull_request_batch2

Pull request batch2: Batch of my different pull requests
Support proxying SSL connections
Only support proxied SSL with Python >= 2.7
Unbreak Config on empty options

This prevents the following issue:

Traceback (most recent call last):
  File "/usr/local/bin/s3cmd", line 2521, in <module>
    rc = main()
  File "/usr/local/bin/s3cmd", line 2261, in main
    cfg = Config(options.config, options.access_key, options.secret_key)
  File "/usr/local/lib/python2.7/dist-packages/S3/Config.py", line 126, in __init__
    self.read_config_file(configfile)
  File "/usr/local/lib/python2.7/dist-packages/S3/Config.py", line 226, in read_config_file
    self.update_option(option, cp.get(option).strip())
AttributeError: 'NoneType' object has no attribute 'strip'