More bugfixes for reloader

See #594

- Also watch files that are not in the same directory as a successfully
  imported file. This is achieved by boldly scanning everything in
  sys.path.

- Use the same module scanning algorithm for both reloader types. This
  makes the watchdog reloader slower but makes the code easier to read.
  Maybe we should consider using a different interval for the watchdog
  reloader.

- Test both reloader types
If i change this such that testsuite_app is a single-file module, the tests mostly pass.