Use HEAD on Container panel ajax update

Change-Id: I9d9e56951e6fe0b8b9cd5242be43c0abb9f9ec4c
Closes-bug: 1257238
Improve contributor documentation

Fix various errors in the contributor documentation:

- Factual mistakes (wrong file locations, etc)
- Formatting errors
- Typos

Change-Id: I4863ca10a532ac74491cfb19f8382e3d5287d2f3
Plugin-based dashboard configuration

This is a proof of concept of how plugin-based configuration of
OpenStack dashboards could be realized. Additional plugins add
their configuration file in the opestack_dashboard/enabled/
directory (the exact location is up for discussion, we will
probably want a whole hierarchy of locations, with the possibility
of overriding settings).

An example file _50_tuskar.py is added to show how an additional
dashboard could plug into this system. If you have tuskar_ui installed,
this would add Tuskar to Horizon.

Change-Id: Iaa594deffbdb865116f6f62855c32c8633d2b208
Implements: blueprint plugin-architecture
Set can_set_mount_point default to False

Patch https://review.openstack.org/#/c/59229/ only changed the default
value in the local_settings.py example file. If the setting isn't defined,
it still defaults to True

Change-Id: Ia3525786e5eb9ec83b8057c1cb6158ab153adc59
Closes-Bug: #1255136
Increase Horizon base unit test suite.

Add unittests for templatetags, decorators, filters and common utils.
Complement tests merged on commit #258e9b465314d33e669b77b52cec63b2c8aca370

Change-Id: I3f4486815a11c22d6bbcaa014b8e632b43d3be89
Removal of json2.js

    As long as Horizon does not support any browser lower than IE8,
json2.js library is no longer needed, browsers have a native
implementation of JSON.stringify and JSON.parse.
    Removing this script allow us to reduce the javascript footprint
of Horizon.
    jQuery $.parseJSON will replace all parsing of JSON in order to
standardize the use of this functionnality.

Change-Id: Ifaf027e2adc462ee7b3d9587b28583ade376ccfc
Hide key field in edit Flavor Extra Specs dialog

Nova allow user to add key/value to flavor, but its api is only
able to update value according to key.

Hide the key field in edit dialog, in order to avoid confusion.
User can delete and create new one when need to update "key".

Change-Id: Ibd13bfe8a3832d019d16a39b40f643b860e3c612
Closes-Bug: #1257882
Add architecture field in image properties.

It would be beneficial for us to be able to add architecture
to the image file, and we already have an architecture field
on update Image dialog.

Change-Id: Ic48a377b5a449ac632a72f9fb5cbdfafaf39993f
Closes-Bug: #1257191
Fix URLs of panels grouped into packages

If you group related panels into packages using the
dot notation, the URLs generated for them will have
the dot in them where you would rather expect a
slash. This patch fixes it by replacing the dots in
the panel slug with slashes when generating URLs for
them.

Change-Id: I450321f2c2a64297fbd3e1104ad5635aa5d9aba8
Closes-bug: #1259458
Specify tenant_id when retrieving LBaaS/VPNaaS resource

In Neutron API, resources from all tenants are listed when
retrieving a list of resources with admin role. Horizon
project dashboard is for project-specific operations,
so we should retrieve only resources of the given project.
LBaaS/VPNaaS panels have this problem, but FWaaS does not.
router_list should be called with tenant_id filter too.

This commit also fixes VPN/FWaaS tests so that it extract tenant_id
from request attribute rather than use tenant_id of test_data.

Change-Id: I080e6c6d1e426a878c1d088763bbc7e5add15820
Closes-Bug: #1244126
Merge "Set can_set_mount_point default to False"
Merge "Fix URLs of panels grouped into packages"
Merge "Removal of json2.js"
Merge "Use HEAD on Container panel ajax update"
Merge "Increase Horizon base unit test suite."
Merge "Add architecture field in image properties."
Merge "Plugin-based dashboard configuration"
Merge "Specify tenant_id when retrieving LBaaS/VPNaaS resource"
Merge "Hide key field in edit Flavor Extra Specs dialog"
Merge "Improve contributor documentation"