Upgrade 3rd party dependencies.
Add various development tools.
Improve specs.