Convert Environment to interface type

Development Environment is hardcoded to a particular port that clashes with the port used by Jenkins. That meant unit tests that spin up a temporary http server were failing on Jenkins.