Full semver support in Bower #1

@devoncarew 

* Support for various semver range operators in dependencies in bower.json with version resolution via GitHub tags: e.g. `^1.2.3`, `~1.2.3`, `>=1.2.3 <2.0.0`.
* Support `latest` as a meta-tag designating the latest released tag + default an unspecified tag to `latest` instead of `master` previously: e.g. `Polymer/polymer#latest` or `Polymer/polymer` will currently resolve to `Polymer/polymer#0.4.2`.

A bunch of less important stuff is still to be implemented: will file individual issues (e.g. use "resolutions" from bower.json instead of proprietary overrides from CDE flags, resolve possible conflicts, use Bower registry to discover packages without explicit paths...).
No, it's just for printing messages.