Reduce code duplication in cache tests.
Add DecoderCache.remove_orphans

This function removes any *.npy or *.pkl files that don't have a
corresponding pair. This can occur if Nengo is interrupted when either
creating or removing files in the cache.
Handle deletion of files during cache shrinkage.

Fixes #557.