Bug fix on neutron's API to return the correct target ID

In the class FloatingIpManager, the function filters the
resulting list of ports with all available floating ips.
The function now returns the target ID of a port with a
floating IP associated to it. Added a new function to get
this to pass. In the next phase is to refactor the
floating ip api to allow a finer granularity. This will
be useful later for managing floating ips.

Change-Id: I02286dbbb60318b0157992622ffdeeae45a71bc1
Closes-Bug: 1265872
Move volume snapshots table to volumes panel

Now that instance snapshots are just images, the images & snapshots
page only has images and volume snapshots. This is an odd combination.
I think we should now move volume snapshots to the volumes panel,
since a volume snapshot is tied to a volume.

Closes-Bug: #1190843
Change-Id: I3e12cec8b859a30db9f131e9889a92277e064086
Fix a code indentation error

Change-Id: I010946cfebf159bd888e0a3a9ebb46e02d223036
Enforce FlavorExtraSpecs Key format

When creating a key name with characters like '/' that are not
being encoded or cannot be handled as expected by routes when
matching the url, then it's not possible to remove them anymore.
The new format apply the restriction: r"^[\w\.\-: ]+$"

Change-Id: Ie6f982a0e44212bf0d58da66b89aff7740d06e8f
Closes-Bug: #1256119
Merge "Bug fix on neutron's API to return the correct target ID"
Merge "Move volume snapshots table to volumes panel"
Merge "Fix a code indentation error"
Merge "Enforce FlavorExtraSpecs Key format"
Updated from global requirements

Change-Id: I79f8c2d0c9ff616b771d9e7268e39f2ace014836
Fixing filesizeformat test issue with Django 1.6

In Django 1.6, the filesizeformat filter now applies
django.utils.html.avoid_wrapping to the formatted result. The end
result is replacing " " chars with "\x0a" a non-breaking space.
The string comparision of the error message in the affected test
was failing.

Adding a version check to allow support for Django 1.4 and 1.5.

Partially implements: blueprint django-1point6
Change-Id: I50f4c56f969d93b436abee6258e2e0102fd95784
Allow redisplay of the workflow from its handle()

Let the handle() method of the workflow raise a ValidationError to
indicate, that the operation failed and the whole workflow has to be
redisplayed for the user to correct the data and try again. It is
assumed that the handle() method will inject the right error messages
in the right steps and fields of the workflow.

This patch also cleans up the logic of the code a little, to make it
easier to read, and replaces the "next" variable that conflicts with
a python build-in with a more descriptive name.

Change-Id: I2fddb5ae8abbff72b8bf8258001a6f61aef3d1ba
Implements: bp/redisplay-workflow-after-handle-error
Merge "Fixing filesizeformat test issue with Django 1.6"
Merge "Allow redisplay of the workflow from its handle()"