convert to using hosts

change host.read and host.write to read_text_file etc.
remove most references to unittest from the test files.
start testing json_results
add host.fetch() to make http requests testable, add upload_results_if_necessary tests