Add (failing) tests for cache keys

This tests that the cache keys used for numpy prod and sum
functions create the correct cache keys. This is failing at the
moment due to a copy-paste error in the prod implementation.
Fix cache_key for array_prod

The test_array_cache.py tests now pass.