cleanup error messages shown in DEBUG mode
fix style in chained block function calls
replace type constants with subclasses in Action

Action now has two subclasses: DockefileEntry
and ContextFile.
perform all sanity checks on definition.yml at once

introduces DockerGen::Build.checkdefinition(definition)
cleanup makefile generation, allow no docker_opts
lint + update README.md and definition.example.yml
improve error handling

- check build definition file for common errors
- check snippet definitions for common errors
- check for conflicting context dependencies between snippets
- assume an external dependency is satisfied if a parent
  directory of its is covered by an asset
update snippets to new format, closes #10
add Guidelines to README.md
add example build directory