updates ComponentMap to have a default iterator

- refactored KeyMap iterators in to reusable classes
- refactored entity key generation in to iterator class
- updated bower dependencies
- added querifyjs for KeyMap queries (can be ignored if not used)