When providing a --template argument during project creation, users can use templates apps from a local directory, GitHub, or NPM. This makes sharing templates, and example apps much easier.
When using a GitHub URL, the user may specific a branch to pull from by appending a "#" followed by a tag name to the Git URL.
A version can also be supplied by the user when fetching a template from NPM. This may be done by appending a "@" followed by the NPM version to the NPM package name.