Re-enable zk:// urls for Mesos SparkContexts

This was broken in PR #71 when we explicitly disallow
anything that didn't fit a mesos:// url.
Although it is not really clear that a zk:// url should match
Mesos, it is what the docs say and it is necessary for backwards
compatibility.

Additionally added a unit test for the creation of all types
of TaskSchedulers. Since YARN and Mesos are not necessarily
available in the system, they are allowed to pass as long
as the YARN/Mesos code paths are exercised.