Advanced network configuration

how it works:
* In site.pp early as it possible we call ```prepare_network_config(Hash)``` function. Function returns nothing. It has one incoming parameter -- hash with network configuration (interfaces, endpoints, transformations, roles). This function do nothing, only prepared and sanitized incoming parameters.
* create class for network configuration. Function generate_network_config() returns string with order network resources creation, only for debug purposes. Ex:
```
  class advanced_node_netconfig {
      $sdn = generate_network_config()
  }
```
* Call this class (may be in early stabe):
```
class {'advanced_node_netconfig':   stage => 'netconfig'  }
```