Change execution tasks to take config objects and add Maestro main trait...

....

1. Provides configuration objects for maestro tasks,
   so the user can specify the config once at the start
   of the job and not repeat themselves below.
2. Provides a MaestroConfig object with factory functions
   which supply default values for most upload, load,
   sqoop import/export, and hiveTable configuration parameters.
3. Provides a runner trait which can be extended to form a main
   class.
4. Moves execution tasks and related classes to exec namespace.
5. Corresponding changes to documentation, tests, and examples.

This closes #252, closes #253, fixes #223, and closes #224.
Well ... this way you get the same error message whether you do `if loadInfo.continue` or `loadSuccess <- loadInfo.withSuccess`. But it doesn't make sense to change the error message you get from `if loadInfo.continue`, so I personally think we should leave the error message here alone as well (as they have to learn what the filter error message means anyway).