update to use brooklyn M2

DO NOT MERGE! FOR REVIEW ONLY!

This switches to use 0.5.0-SNAPSHOT; it's important we test that in preparation for releasing M2 - so we're ready to update this repo and so we know we have fixed everything needing fixed in core brooklyn before we release M2.

---

- updated to point at brooklyn 0.5.0-SNAPSHOT, in preparation for brooklyn M2 release.
- Use interface+impl for each entity
- Use ApplicationBuilder