Clean up code, handle errors better

Concordance can now track when its worker fails. Scorer cannot, but doing it right
(both of them) may involve a sort of ticketing system for each job associated with
a concordance or a run.

This commit also fixes many issues and improves the validation module and
associated code.
hasattr exists, removing it (why did I add it?)
Move 'magic string' to var
Set WebHDFS user from env var
Add comment to validator function Castable
Merge pull request #18 from hammerlab/graceful_worker_errors

Workers handle errors better, code is cleaner