remove commented rspec config
remove old shell dsl
call Script#run late
extract templates
allow passing a regexp to match a sexp node
port rust
only announce java versions if we use jruby
refactor addons to pass script.data and extract Addon::Base
refactor Addons::Artifacts

/cc @meatballhead
refactor Addons::CodeClimate
refactor Addons::Firefox
refactor Addons::Hosts
refactor Addons::Postgresql
refactor Addons::SauceConnect
refactor Addon::CoverityScan (has no tests!)
refactor Addons::Deploy

/cc @rkh
refactory DirectoryCache

/cc @rkh
refactor data_spec
port spec for 80e17d89 (cocoapods: don't run  if Podfile.lock hasn't changed)
port 2d3a4e0 (Composer updates)