Check if config file is empty before attempting to read it.
Merge pull request #199 from manuelmeurer/patch-1

Check if config file is empty before attempting to read it.
Relaxed mail dependency version for #200
added notifier for prowl (www.prowlapp.com)
updated readme
Merge pull request #202 from swissmanu/develop

Notifier for Prowl (iOS push message gateway)
Initial commit for implementing the Backup archive splitter. Everything is thoroughly tested with RSpec, but haven't yet tested it a lot manually.
Ensure temporary chunks get removed during the cleaning process, not just the main backup file. Also, set the @chunk_suffixes to an empty array if it's not yet been initialized.
Clear the Backup::Model.chunk_suffixes every time a new Backup is run (in case multiple backups are being triggered, ensure that the old chunk suffixes of the previous backup are cleared.
Moved the exit(1) command to a more suitable location.
Updated the Guard file.
Added "prowler 1.3.1" to the Gemfile.lock.
(Re)set Backup::Model.chunk_suffixes to an empty array from the Backup::Splitter class, not from the binary. Fixes comments to be more accurate on what's going on.
Log removal of chunks for Cloud Files.
Fixed Dropbox to work with Backup::Splitter. Backup::Storage::Dropbox now instance variable caches the connection so that it doesn't hammer the Dropbox service. The instance variable gets removed when finished processing all chunks. Instead of deleting one file at a time from Dropbox, now it simply deletes the whole folder in a single API call. The name of the file that's being uploaded differs from what the remote file name should be named, now using :as => remote_file to change the filename on the Dropbox server to the final result.
Fixed adding support for Backup::Splitter to Backup::Storage::Ninefold. Should not request the directory for each chunk. Added a logger to log every chunk that gets deleted. Delete each chunk and once all chunks have been deleted, remove the empty directory to clean up the filesystem.
Finished fixing issues with Backup::Splitter combined with Storage::[FTP|SFTP|SCP|RSync|Local] and made them all compatible. Storage::RSync is still independent of "backup cycling" and will also be independent of "backup splitting" and will not use these methods.
Updated all the Database classes, and the Archive class. Moved the #prepare! and #log! methods from #initialize and #perform! in to the Backup::Database::Base class in the #perform! super-method. Now, instead of running #prepare! and #log! from within the child (Database) class, we invoke it from the Backup::Database::Base class by calling #super in the child (Database) class's #perform! method. This cleans up / refactors / abstracts code, and also fixes the WILDCARD triggering issue.
Get rid of all debug options for Backup::Syncer::RSync. Particularly the -P option caused file transfer issues.
Ensure absolute (full path) using File.expand_path(path) rather than using relative paths and " ~ " for $HOME. This provides more flexibility in the backup configuration file, improves the readability of the code and makes the overall implementation more solid and the generated paths more consistent.