add support for component as well as bower

component and bower have different yet very similar specs. fortunately bower allows you to select your own `json` file (they might be switching to bower.json permanently later) and you already have commonjs support, so it shouldn't matter that much.

only downside is that you'll now have to update your version in three places!