Pub integration

This change runs "pub get" when a project is created; which will fetch any packages (similar to NuGet Package Restore).

This will fix any errors/warnings in default templates caused by references to pub packages.

Note: This PR currently includes some changesets from the project-refactor branch because my Git skills are a bit lame!
I think this is blocking, and might be a bit silly inside an async/Task-returning method?