Manually clean up paths.

Using code:set_path/1 with very large paths is very slow on larger
projects.  On my mid-sized project, it seems to take around .4s per
call.  Emulating the call with direct path removal (using
code:del_path/1) seems to be quite a lot faster.
Should we really ignore the result of `del_path/1`? In the old code we check that `code:set_path/1` is successful. We could use `lists:foldl` to keep track of failure and print paths that we weren't able to successfully remove. If there is failure, we should probably call `?ABORT/2` or at least return `false`.

If we keep the list comprehension and ignore the result of it, we either have to change it to `_ = [...]` or use `lists:foreach`.