Added database port field to PHP and Java configure templates

cr https://cr.amazon.com/r/2264891/
Make invocation of `npm install` configurable.

Change the default npm invocation to `npm install --production`.

Rename npm_install_command to npm_install_options.
Make a real copy of ENV, not just a shallow one.
Let minitest-chef-handler find the specs again.

Explanation:
When using chef-client in local mode, Chef::Config[:cookbook_path]
returns the cookbooks cache dir. But chef-zero ignores the specs
directories when filling that cache dir. Should be resolved with Chef
11.14.

References:
- https://tickets.opscode.com/browse/CHEF-4781
- https://github.com/btm/minitest-handler-cookbook/issues/42

Make code more compact - from CR.
Use has_key? for key existence test to avoid loading the whole sub-structure.
Generate /etc/hosts using search

cr https://cr.amazon.com/r/2264769/
When installing custom versions of berkshelf, don't install gem documentation.
Revert "workaround to fix test for haproxy."

This reverts commit fde06dbaa5ce2ac8d509fadc2bc061558d0a51b6.
Make all cookbook tests pass.
Revert "Added database port field to PHP and Java configure templates"

This reverts commit 821f6406e88b8ed455978639100fc9432018a20c.
Add shortnames to /etc/hosts again.