Lots of tweaks, fixes and cleanup

Fixes and improvements:
 - Use the pexpect built in setting 'delaybeforesend' to configure our delays. This applies universally to anything being sent.
 - Tweaked run_script a bit so it will now source the script by default (i.e. it acts as if you're put all the lines as individual send_and_expects)
 - Fixed send_file (and therefore run_script) to work with files > 4096 bytes.
 - New style module loading doesn't choke if you give a duplicated shutit_module_path.

Cleanup:
 - No reason for user shutit modules to have docstrings, so removed them from module template
 - The default prompt is 'inherited' from setup, so there's no need to set the default expect to root_prompt as it's done automatically - changed all the library modules in light of this.
 - Moved fail into the shutit object.
 - Simpler 'new-style' module initialisation by passing deps and conflicts directly to the constructor, applied this to all library modules.
 - As a result of the two above, `import util` should now no longer be required in any shutit modules so I've gone round purging it where possible.