Class: _CustomizationMixin


Customization Mixin is a general purpose Customization Engine. It takes a customization object and a layout object and applies the customization defined to the layout. A customization object has the following properties: * `at`: `function(item)` - passes the current item in the list, the function should return true if this is the item being modified (or is at where you want to insert something). * `at`: `{Number}` - May optionally define the index of the item instead of a function. * `type`: `{String}` - enum of `insert`, `modify`, `replace` or `remove` that indicates the type of customization. * `where`: `{String}` - enum of `before` or `after` only needed when type is `insert`. * `value`: `{Object}` - the entire object to create (insert or replace) or the values to overwrite (modify), not needed for remove. * `value`: `{Object[]}` - if inserting you may pass an array of items to create.