Touchups: css
Added: event 'empty'
Added: .shift
Fixed: .pop/.shift was removing the entire list.
Refactored: DRY .pop/.shift
Added: .trigger('update') for every change.
Added: .deepEqual to tests.
Refactoring: for less change of typos.