Various updates

These updates remove the old smart.json way of specifying packages and adds more support for the notation used in bower.json.