FIX: Prevent cache corruption by moving before tags write.

A side effect of xolox#easytags#write_tagsfile() is that the entries argument is joined together. This then causes problems in s:cache_tagged_files_in(), where the filename element is addressed via entry[1]. When the entries have been flattened, this accesses a single character, and then the cache is corrupted.

To fix this, move the cache update before the writing of the tags file. This avoids the need to make a copy of the entries before flattening them.
Merge pull request #37 (prevent cache corruption by moving before tags write)