chore(Gruntfile): add karma debug mode
feat(couchService): more sophisticated caching

The new caching has several advantages over
the old one.

    - getProduct operations went from O(n) to  O(1)
    - getProducts operations are allowed to take
      filter/paging parameters while still being
      fully cacheable

This partly implements RFC
https://github.com/couchcommerce/rfcs/blob/643090e8d2f9bf590e05abd5940602515c0a7d93/active/RENO-catalog-handling.md