Exposing network config thru custom Attrib [1/1]

This pull exposes the network configuration for a node by creating a custom attrib that fronts the network active record objects.
- Added custom attrib to expose network configuration thru Jig.
- Added necessary relationships to support this.
- Added NodeRef class to handle many to 1 relationship from Node to Network without modifying Node.
- Added NodeObserver to clean up dangling NodeRefs and AllocatedIpAddresses on Node delete.
- Updated unit tests to check cascading delete from Node to NodeRefs and AllocatedIpAddresses.


 .../scaffolds/node_ref_controller.rb               |   20 ++++
 .../barclamp_network/allocated_ip_address.rb       |    2 +
 .../models/barclamp_network/attrib_ip_address.rb   |    2 +-
 .../barclamp_network/attrib_network_config.rb      |   40 ++++++++
 .../app/models/barclamp_network/ip_range.rb        |    8 ++
 .../app/models/barclamp_network/network.rb         |  105 +++++++++++++++-----
 .../app/models/barclamp_network/node_observer.rb   |   29 ++++++
 .../app/models/barclamp_network/node_ref.rb        |   21 ++++
 .../db/migrate/20120730175122_create_networks.rb   |    1 +
 ...20130115220245_create_allocated_ip_addresses.rb |    1 +
 .../db/migrate/20130319151500_create_node_refs.rb  |   24 +++++
 .../lib/barclamp_network/engine.rb                 |   16 +++
 .../barclamp_network/test/network_test_helper.rb   |    7 +-
 .../test/unit/allocated_ip_address_model.rb        |   29 ++++++
 .../test/unit/interface_model_test.rb              |    4 +
 .../test/unit/ip_range_model_test.rb               |   10 ++
 .../test/unit/network_barclamp_test.rb             |   10 +-
 .../test/unit/network_model_test.rb                |  102 +++++++++++++++++--
 18 files changed, 384 insertions(+), 47 deletions(-)

Crowbar-Pull-ID: 2228b9de78b83874162b848d7e08af88fc2e1505

Crowbar-Release: development