Check the length of aggregate metadata

PostgreSQL gives an error if you try to shove 256+ characters
into a 255-character field. So we need raise a HTTPBadRequest
explanation if the length of aggregate_metadata.keys or
aggregate_metadata.values is above 255.

Change-Id: I2c778f2237ba5bd2aa8335a0eae80f3aad3e9157
Closes-Bug: #1219693
Cleanup and gate on pep8 rules that are stricter in hacking 0.9

Fix up pep8 failures for rules we previously gated on, but that are now
stricter in there enforcement.

Ignore E251 due to https://github.com/jcrocholl/pep8/issues/301

Change-Id: I62b33e97c44c4a5be436b381cfbdaeb31cd2638b
Enhance and test exception safety in hooks

This patch adds exception handling when calling pre and
post functions of hooks. Exceptions will be caught and
logged, but the hook chain and function call will be
allowed to proceed.

Partially implements: bp instance-network-info-hook

Change-Id: I45e76cd156c244ff57f77db103a9a579f14ad4f1
Add hook for network info update

This hook will allow deployers to register scripts that will
be called whenever an instance's network information is updated.
Scripts will be called with original arguments of the network
info update function call.

Implements: bp instance-network-info-hook

Change-Id: I56ff28d305cf8d9a67b37c45062256b3899f11dd
Merge "Check the length of aggregate metadata"
Merge "Cleanup and gate on pep8 rules that are stricter in hacking 0.9"
Merge "Enhance and test exception safety in hooks"
Merge "Add hook for network info update"