Fix dependency version matching expressions.

For versions <=0.x.x, use exact matching (ex: async: 0.9.0).
There is no guarantee of compatibility, as
SemVer doesn't apply for versions <=0.x.x.
To guard against breaking dependency changes, use exact matching.

For versions >=1.x.x, use compatible matching (ex: protractor: ^1.0.0).
This example will match <=1.0.0 and <2.x.x.
A major bump reflects a breaking change.

If a dependency is known to be incompatible with SemVer, use exact matching.

http://semver.org/
https://github.com/isaacs/node-semver