switch to a tag whitelist system

SafeYAML now just parses and walks the resulting parse tree gathering a
set of tags used. If the set of tags used is included in the set of
whitelisted tags, it calls unsafe_load to do the actual YAML loading.
Otherwise it raises an exception.