Halt build on YAML error without jinja2

This fixes the issue described in both #247 and #137 by detecting parse errors related to "{{" inside a YAML file.  The major reason for those to be there is when doing template work.
I've adjusted it entirely to use exceptions to let the calling code catch it.  It's possible I should move the catching code further up.

One note on `sys.exit("some string")` -- that makes it much harder to work with scripts in the context of shell scripting.  In https://github.com/conda/conda/pull/999, I switched to using numbers so things outside of Python can reason about what happened.  That would be a good habit to get into throughout both conda and conda-build.