Merge branch 'release/1.0.3' into develop
move 3rd party packages under dbsake.thirdparty namespace

- this includes 'sarge' (used for pretty subprocess access) and
  'tempita' used for templating
remove argparse

- dbsake was not using any argparse features and this adds about
  ~20KB (compressed) to the executable zipfile.  Removed argparse
  and adjusted dbsake:main() to use optparse instead.
bump version to 1.0.4
Merge branch 'feature/thirdparty_cleanup' into develop
add versionadded:: 1.0.3 tag to mysql-sandbox documentation
catch KeyboardInterrupt and exit non-zero

- previously sigint = ugly traceback for an otherwise normal
  event
don't force baker to emit excessive newlines

- added trying to make mysql-sandbox help output prettier, but
  it was an ugly solution, so reverting
cleanup dbsake help output

- this forces scriptname to always be basename(sys.argv[0]),
  typically 'dbsake'.  This removes some long ugly paths from
  baker usage() output
patch baker.py to support options with multiple values

- this adds a multiopts option to @baker.command that accepts
  a collection of parameter names. These options can be specified
  multiple times on the commandline and the paramter will receive
  a list of values.
adjust default dbsake logging format
make generate_defaults take kwargs to are added to the template

- this generalizes user/password as just a kwarg and allows setting
  any of the values supported by the my.sandbox.cnf template
  when calling generate_defaults.
templatize innodb-log-file-size in my.sandbox.cnf

- if a value for innodb-log-file-size is passed to the template
  it will be used rather than the current default (32M)
add simple mechanism to unpack a datadir from a tarball

- this uses python tarfile with the transparent compression option
  so supports both tar.gz and tar.bz2 files.  A simple glob
  based inclusive filtering mechanism is in place to support
  some control on what is (or is not) extracted from the tarball
add options to support initializing sandbox from tarball

- this adds a --data/-D option that can specify a tarball which
  will be extracted to the sandbox datadir prior to bootstrapping
- additionally a --table/-t option was added to support filtering
  elements from that tarball (and should support other non-tar data
  sources in the future)
document --data and --table sandbox options
Merge branch 'feature/baker_multiopt' into develop
consolidate various util methods in new dbsake.util package

- added dbsake.util.path which has various useful path methods:
    * which() - backport from py3 shutil.which
    * relpath() - backport from py2.7 (python bug#704793)
    * chown() - backport from py3 shutil.chown
    * makedirs() - implement mkdir -p
    * disk_usage() - backport from py3 shutil.disk_usage
    * resolve_mountpoint() - find a mountpoint of a path
- move enum.py from mysqlfrm package to dbsake.util.enum
- move Bunch class from mysqlfrm.util into dbsake.util
- update mysqldumpsplit to use dbsake.util.path
- convert dbsake.sandbox mkdir_p to use dbsake.util.path:makedirs
add dbsake.mysql package
move dbsake.sandbox -> dbsake.mysql.sandbox