Add utility function to report cache sizes

Additionally, add configuration parameter print_cache_sizes (env var
PYOP2_PRINT_CACHE_SIZES).  If True, PyOP2 will print the sizes of caches
on exit.
Add some tests of object caching