changed allowable structure again this time to be more flexible.

For instance:
All values are allowed on a Container at any time. Through ->fill() or __set()

If the $allowable array is empty, toArray() and toJSON() will output all values. This can be overridden by passing true to either function.

If the $allowable array is not empty than only those values (fields) will be outputted.