swift: remove unnecessary format=json query string parameter

Angular already adds a "Accepts: application/json" header which makes
Swift return JSON data.
swift: let $http add query string parameters

This changed the URL used in a test because the internal buildUrl
function used in $http sorts the parameters before adding them to the
URL. In other words, we can expect the new output to be stable.

We also had to change the regexps used in the Swift similator so that
they can handle the lack of '?' when listing a container.
app: use ui-router instead of ng-route

This is a flexible routing framework by the AngularUI team. Compared
to ng-route, this gives us more precise control over the routes:

* we can match URLs both with and without a trailing slash. With
  ng-route this is not possible since matching 'foo' automatically
  adds a rule for 'foo/' with a redirect back to 'foo' (and vice-versa
  if you add a rule for 'foo/').

* we can generate links to application states with associated URLs.
app: standardize on curly pattern matches
app: introduce object state with ObjectCtrl

This splits the ContainerCtrl into two, one controller for handling
listing pseudo-directories (paths ending with a trailing slash) and
another for listing single objects (other paths).

Before, drilling down in the hiearchy of pseudo-directories would
eventually take you to a page with a "listing" of a single object.
This happened when the prefix excluded all other objects. This page is
now empty -- we will use it to show object specific metadata.
swift: add headObject method

Despite what the documentation says, there is no expectHEAD method in
version 1.2.25 of angular-mocks.
object: show metadata (fixes #99)
app: rename path to prefix

This better matches how we use this with Swift.
Merge pull request #100 from mgeisler/metadata

Show object metadata