Extract out as many scalactic macros as possible, so that they can be used within Scalactic and ScalaTest builds.

(Snapshots and Requirements has too many dependencies via Prettifier.)