Modify broccoli-filter to work better with the (proposed) broccoli-kitchen-sink-helpers change to hash trees based on file content instead of just size and mtime

The related/necessary helpers PR: broccolijs/broccoli-kitchen-sink-helpers#25

Also, simples the logic by always writing to the cache dir and reusing `symlinkOrCopyFromCache` for both the non-cached and cached code paths (like broccoli-cached-writer does). FYI, this has the side-effect of making files in the cache have full filenames/paths (instead of just being named 0, 1, 2 …).