Convert boolean cache() to enum

The CacheService#cache method will now return an enum based on the
outcome of the method. This will provide more granular information if
there was a cache failure.

Updated the tests appropriately.
Safeguard Cell Re-caching

The testMemoryControls method of the CacheServiceTest was failing due to
anonymous retrieval of a cell, that would then re-cache itself on
finalization immediately before a cache.clear() method.

Depending on when the cell was finalized and cached, the cache may or
may not have been empty (and for the purposes of this memory test,
it would then be completely full).

To fix this, the CacheService now has a retrieveNoRecache method that
functions identically to retrieve, except with the cell's
cacheOnFinalize disabled.

The CacheServiceTest now uses this method where it was previously
failing. The MapDBCache was also modified to remove the hack waiting for
caches to clear, as in fact the issue was erroneous re-caching cells.
Updated SCIFIO code templates

Copied the ImageJ2 configuration files to SCIFIO. These are tested
configuration files, whereas the BFSourceCleanup/Format were never fully
established.

Applied these templates to all code.