Cleanup variables and comments on collection
Enable Collection events

- `add` when adding to collection
- `remove` when removed from collection
Trigger events `change`, `change:attribute` and `invalid`
Enable instantiate schema with direct `new Collection( $schema );`
Add more tests for collection