Broke out PlayWatchService and AssetsClassLoader to be shared

These files can be used in multiple contexts.  In particular, they will
be needed by the forth-coming forked-run support needed by Activator
based on sbt-server.

[Updated] Added play.sbtplugin.run.PlayWatchService back with deprecation warnings

* Also, improved stand-alone sbt scripted test setup
Added support for additional settings in shared projects

* Added publish settings
Merge pull request #3475 from corruptmemory/wip/shared-runtime-new

Broke out PlayWatchService and AssetsClassLoader to be shared