Add support for a custom public directory

At the moment if you want to use a custom public directory for your application you'll have to SSH in after the box is provisioned. Do-able, but in order to make life a little easier and more configurable I added the ability to use custom public directories. Support through Apache, nginx as well as the Laravel and Symfony scripts.