=pro load sample builds with project dependencies

* load sample builds from their definitions and replace library dependencies with project ones
* remove redefined sample build definitions
* test osgi sample by running a maven command

This unblocks #16096 because after SBT 0.13.6 project definitions defined in sbt files take precedence over same projects defined in ```... extends Build {}``` definitions. This prevents us redefining sample build definitions in `AkkaBuild.scala`.

OSGi dining hakkers is tested by running maven command. I tried to write `.sbt` files for that sample but was hit by various OSGi related errors when running tests. Therefore I delegated for maven to do all the work.

This is one more step to the direction of #15863 and #15031.
rather deep / scary sbt features, whoa.

related question for an idea I've been thinking about: so... using this trick it would be possible to exclude projects from a build run depending on some env things, right? Just don't emit such project I want to exclude to `projects` here?