Add generators support.

Generating a sample now depends on a generator.
Better with_enumerator semantics.
Better with_enumerator docs.
Remove requires not needed.
Remove data files and add cli_options method.
Add cli_name method.
Minor refactorings preparing to generators.
Add test:distributions task to Rakefile.
Remove whitespace.
Move sample tests to a submodule.