Replace bower [large] dependency with bower-config [small] dependency

Currently, the only reason Broccoli has a dependency on Bower is to properly read an interpret a `bower.json` file. The trouble is, depending on `bower` means `broccoli` ends up with __191__ npm package dependencies!

This can be improved by replacing the `bower` dependency with `bower-config`, which is used internally in `bower` here:
https://github.com/bower/bower/blob/master/lib/config.js#L3

This change mimics this usage of `bower-config` and reduces the dependencies down to 77.

Relates to #26
Extract watching logic into separate file
Remove synchronized
Merge pull request #52 from ericf/bower-config

Replace bower [large] dependency with bower-config [small] dependency
Update CHANGELOG
Release version 0.2.4
Update and loosen dependencies
Remove unused .gitignore entry
Merge pull request #53 from jnicklas/extract-watcher

Extract watcher into own file
Move currentDirectory out of watcher
Update CHANGELOG
Remove ALL the semicolons; set constructor
Rewrite server as a connect middleware
Add Get Help section
Add grunt-broccoli
Make sure watcher doesn't trigger multiple simultaneous builds
Merge pull request #62 from jnicklas/single-build

Make sure watcher doesn't trigger multiple simultaneous builds
Merge pull request #59 from jnicklas/connect-redux

Rewrite server as a connect middleware
Update CHANGELOG
Release version 0.2.5