Sort out location of todo's when testing.

Having deleted my home folder with the previous version of this code, a
serious update was required.

- Todo.location is a method that uses ENV['HOME']. If we change
  ENV['HOME'] then the location will change. Previously used a constant,
  very bad idea.

- throw a RuntimeError before running any feature if we are not writing
  Todo's to the place we expect

- cleanup, which unfortunately needs to use an rm_rf, is to a constant
  value in the Cuke environment, not something in the code.
Project readme