Backport osl-apache vhost fixes into osl-nginx

This imports much of the work done in ``osl-apache`` into nginx. That way we're basically using the same type of definition between either http server.
I was just expecting to see `0644` over `644` -- in Ruby, `0644` is equivalent to the base-8 `644`, which in decimal is `420`. Serverspec must do the conversion behind the scene for you. It's fine as is if that is what they recommend in the docs.