cyclades: Return 403 instead of 401 in subnets

Return 403 (Forbidden) instead of 401 (Unauthorized) in certain subnet
actions.
pithos: Add test

Add test for listing only objects that do not have specific metadata.
pithos: Fix issue with JSON serialization

Method 'get_account_headers' should return list
(JSON serializable) instead of set.

Closes grnet/synnefo#194
ui: Correct initialization of missing flavor object

include missing cpu/disk_template parameter while handling the response of
explicit calls made in order to retrieve details of a flavor id which is not
listed witin the initially retrieved flavors data.

Closes grnet/synnefo#193
astakos: Use webproject URLs as urlconf in reverse

Use "synnefo.webproject.urls" as urlconf in the reverse() calls of
`im/models.py/` and `im/user_utils.py`.

The reason why we explicitly use the webproject URLs is because Admin,
which imports functions from Astakos, may use a different ROOT_URLCONF
in order to disable the Astakos/Cyclades API. Therefore, If a user
needed to resend a verification mail from the Admin Dashboard, the
reverse would fail.

Closes grnet/synnefo#183
cyclades: Fix IndexError
gtools: Fix AttributeError

Check 'dry_run' attribute after ensuring that it is a cluster operation,
since adding tags to networks or nodes does not have the dry run option.
cyclades: Handle vms connected to unknown networks

Catch InvalidBackendIdError when reconciling instances that are
connected to networks that do not belong to Synnefo.