Per vm answers file

This commit adds the ability to use custom answers files for PE on a
per-vm basis. Before this commit, all nodes were built off default
answer files. While the default answers are functional, they do not
suffice for every situation.

The way an answers file is chosen will work as follows. First, we will
try to find the file the user specified. If the user does not specify a
file, we will assume there is a file named after the machine role with
a .txt extention. In either case, if a user provided file cannot be
found, the next step is to fall back to a default answers file.

This method is enforcing that an 'answers' directory under the project
root is used for all user provided answers files. User provided answers
files may be ERB templates.