Move this method to the primary class, as we need it for file manifest operations
To help with read/write performance, create many file manifest files that we delete after we're done instead of one file we continuously read/write from.
Heartbeat should check to see if the directory exists.
Make sure the file manifest directory is created, but can't be browsed from the web.
Easier way of reading files from our now smaller file manifest
It's a directory now, not a file.
Prevent error notices by confirming this is set.
Prevent more error notices
If there are less than zero files remaining, there are just zero files remaining
Better state checking
Move the database mtime check into `is_backup_still_running()`, which is the better place for it.

cc @joehoyle
This check needs to return false, not true, because we changed the logic on the other conditionals.
Make this even more fault tolerant by seeing if there's a ZipArchive process happening

If there is, we're still alive
Merge pull request #116 from humanmade/multi-file-manifest

File manifest implementation still doesn't work reliably using ZipArchive