Added platform dependent operations and improved application directory storage

Added generalized platform dependent operations in addition to its
first implementation. This new operation finds the application
directory based on the platform.

Under the new scheme, Topsoil stores its data under %APPDATA%/Topsoil
on Windows, ~/Library/Application\ Support on Mac OS, and ~/.topsoil on
Linux.

Also added is code to migrate data from the old application directory
to the new one.