Set default compiler to be the same that built dub
Fix the --compiler help message to mark the correct default compiler. See #303.
Update dependency syntax for "dub init" packages of type "vibe.d".
Fix member naming convention.
Include lightweight GIT tags when determining local package versions.
Run executables _after_ generation has finished.

In particular, the generated application is run after the copyFiles have been placed. This is a fix for a regression that was introduced after the last release version.
Fix path based dependencies. See #282 and #253.
Remove unused prototype.
Update unit test for new path based dependency behavior.
For "dub run", change the CWD only if non-empty. Fixes #272.
Switched dub.fetch() to take an enum FetchOptions instead of 4 bools.
Always treat tag descendant commits as build metadata.

This avoids having to constantly perform "dub upgrade --prerelease" when new commits get added to a branch that descends from a tagged pre-release version.
Add a "commit" prefix for descendant versions.
Handle invalid version selections gracefully.

When a selected version of a package doesn't exist anymore (locally any in the registry) for some reason, DUB now falls back to the best match automatically.
Only overwrite dub.selections.json if there are actual changes.
Rename m_selectedVersions -> m_selections.
*Rally* only overwrite dub.selections.json if necessary.
Rebuild packages when dub.json (all packages) or dub.selections.json (root package) changed.
Put BuildSettings into its own module and invoke DMD to determine the actual build platform.

Currently only for DMD, the build platform is now determined by actually invoking the compiler with the proper -mX switches instead of guessing from the compiler run that was used to build DUB.
Add the compiler frontend version to the build hash. Fixes #284.