rayh/xcoder — pull request #15 by burtlo (2012-02-21 21:21:54+00:00)
Title: Global configurations

## Feedback

I would love to get some feedback on some of the additional configuration property methods that I added and your thoughts and commits on this idea in general. I'm not in love with what is going on here exactly but it does what it needs to do.

## Outline of Changes

Retrieving configuration at a target level should consult the project level. It now does that with this series of commits.

* Projects now have a `global_config(name)` and `global_configs`
* Targets and Projects are now `ConfigurationOwners`
* Classes can now be assigned more than one module from the Registry based on the `isa`

* Added a few missing attributes to the configuration.
* Configuration getter will look at the project configuration if no key is defined for the property
* Configuration properties now have `raw_#property` setter/getters
* Configuration properties now have `env_#property` to return the name of the property (e.g. `env_prefix_header` would return 'GCC_PREFIX_HEADER'
* Configuration properties now have `append_#property` which will append a value correctly to the values stored.
* Fixed bug with ArrayProperty
* Added a new KeyValueArrayProperty for arrays of [ "KEY=VALUE", "KEY2=VALUE2" ]