ability to have dynamically set port to host, like heroku

this is just a small enhancement to allow hosts that randomly assign a a port, like heroku

First check if port is assigned, then if env variable is set, finally default to 3000

Just want to say this whole CSOL initiative is really cool!