interim commit reworking Collection unit tests

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
interim commit normalizing functionality and adding documentation

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
update from stash

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
allow Store to call has without the constructor

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
add unit tests and minor fixes for Collection#remove method

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
no need to copy the array

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
add quicker clone option for objects (when applicable)

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
interim commit adding new status system to Collection and coordinating Source to correctly provide the source responding to a particular action as well as reporting an error if no source is found

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
adding more tests and more completion in Source

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
make sure an error is reported but if no source was given the name will not exist

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
fix jshint error

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
interim commit updating model status api and unit tests

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
formatting

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
fix failing restore case

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
fix logical errors in destroy for Collection and Model

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
ensure that the final state is destroyed

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
destroyed must also be an available state

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
cleanup status control and update unit tests/documentation

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
add DESTROYING state and BUSY/ERROR check-state when destroying, add isError, isBusy and isReady methods to allow convenience to general state check without bitwise operation

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
update documentation and implementation format for states on Collection and Model and add non-bitwise methods to Model for consistency with Collection

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)