Refactored Dashtap 'execute' and 'file_is'.

* 'execute' and 'file_is' functions now use 'setread'.
Added test for Dashtap function 'file_is'.

* 'file_is' now only strips one newline (since it reads the file content
  using 'setread'). Added a test that checks this.
Renamed Dashtap internal variables.

* Renamed global variables TEST_* -> DASHTAP_*.

* Renamed function 'on_exit' -> 'dashtap_exit'.

* Added 'dashtap_init' function which can be used to reset the DASHTAP_*
  variables without referring to them directly (needed e.g. for the
  'SKIP' and 'TODO' author tests).
Added Dashtap function 'function_exists'.

* A function to test if shell a function exists.
Renamed test functions '*_exist' -> '*_exists'.
Quoted all here-document delimiters.

* Wrote all occurrences of'<<EOF' as '<<"EOF"'. (Quoting the
  here-document delimiter turns of variable expansion in the
  here-document, which is more or less required when using them for
  shell scripts, to avoid having variables being prematurely expanded.)
Added more tests for Dashtap 'match' function.

* More thorough testing of error messages, and matching against standard
  input.
Refactored Dashtap function 'write_file'.
Dashtap function 'seteval' returns return code.

* The 'seteval' function now returns the return code gotten from the
  evaluated code.

* Added some tests to test the above.
Dashtap function 'execute' doesn't test STDIN.

* As this method is unreliable when called from inside functions which
  have input on standard input. Instead only if called with a single
  argument do 'execute' now try to read STDIN.
Cosmetic changes + error message for 'file_is'.

* Modified a couple of error messages.

* 'file_is' now tests to see if file is readable/existing, and gives
  error message if this is the case.