swift-sim: consistently use lowercase for HTTP headers

We now make sure to only use lowercase header names internally. This
fixes subtle problems and will let us simplify some tests in the
future now that we know the case of the returned headers.

One problem fixed directly by this was how we counted the bytes in a
container: putObject would set 'content-lenth', but listContainers
used 'Content-Length' instead.
swift: add copyObject method
swift-sim: add copyObject method

This exercises the various error conditions for the copyObject method.
swift-sim: emulate Swift bug 1391826

Swift strips out the Content-Encoding and Content-Disposition headers
when copying an object. Constantine kindly looked at the code and
opened a bug for this:

  https://bugs.launchpad.net/swift/+bug/1391826
partials: use button element for buttons with ng-click

This allows us to assert if the button is enabled or not using the
isEnabled method in Protractor. The method always return true for
other elements (such as an a element).
container: add support for copying objects (fixes #53)

This makes it possible to copy objects between containers and within
the same container. The implementation here is pretty simple and there
are some things to handle later:

* #168: show a progress bar when copying objects
* #169: show error when objects cannot be copied
* #170: support for copying objects across accounts
* #171: support for copying pseudo-directories
* #172: update container listing after copy
css: merge remove and status classes
Merge pull request #173 from mgeisler/copy

Support for copying objects