Don't overwrite cache timestamp until after build has been compiled and saved.

I am using asset compress build_ini task on our live server in our deploy script, but was having problems because the build timestamp cache file was being overwritten before the compiled file was generated, which caused visitors to get 404 errors when visiting the site, which were then cached on our CDN causing problems for everyone.
It's not the filename of the compiled build that is changing, it's the cache name that is being used for the timestamp. The reason it changes is to prevent conflicts between the build process (which updates the timestamp to 0 before compiling) and the frontend of the site. So when it is building it will use a temporary cache name '~style.css' and when it is written to file it will move the timestamp from '~style.css' to 'style.css' and remove the '~style.css' key (that code is in AssetCache::finalize()).