Change master detector API, add example scheduler.

- Updates the master detector API so that it operates on futures, much like
  the mesos core master detector API.  This allows us to have asynchronous
  detectors e.g. ZK-based detectors operate correctly.

- The drivers now call Context.singleton() instead of Context() when being
  initialized without a provided compactor context.  This is to ensure that
  whatever context we use has been started.

- Adds an example scheduler that just prints out offers.

Squashed commit of the following:

commit 0de2c7395719f062b626ae551af85514778ad308
Author: Brian Wickman <wickman@twitter.com>
Date:   Wed Aug 27 15:18:08 2014 -0700

    MesosExecutorDriver should use Context.singleton

commit 2a0b1d280a3c9c6534a2b568162d1f3dce33030c
Author: Brian Wickman <wickman@twitter.com>
Date:   Wed Aug 27 14:12:23 2014 -0700

    Rely upon Context.singleton by default so that context lifecycle can be
    decoupled from driver lifecycle.

commit 3ef35e8e535042566dbdacdfc329630a9d05bfba
Author: Brian Wickman <wickman@twitter.com>
Date:   Mon Aug 25 17:59:52 2014 -0700

    Add example framework.

commit d4a8f4877f27b7cccbccdec257f1f0b30eff6ca3
Author: Brian Wickman <wickman@twitter.com>
Date:   Mon Aug 25 00:41:41 2014 -0500

    Fix registration lifecycle.  Make detector operate on futures.