Move M4/source processing to a function

Step one in breaking up the humongous
setup_dotfiles function.
Factor out the old link/dir cleaning to a function
Use redirection instead of cat

Noticed that the manpage identifies $(< file) as
faster than $(cat file).
Rename the source file processing function
Rewrite the dotfiles linking step

The first advantage is that this is in its own function now. The second
is that it's conceptually cleaner, only linking files while creating
directories. When updating the links, it only updates old links, and
only delete empty directories. This should allow site-specific
modifications to be made without getting them blown away when the links
are updated. It's also more effcient in creating/removing links, only
creating links that need to be updated, and only removing broken links.
Unquote the M4 options

They're command line options to m4, not a string.
Fix Leftover Cleanup and Directory Linking

Three major issues fixed:
1) IFS was _not_ set to a newline, it was set to 'n'.

2) By quoting the input to the loops, word splitting wasn't being
used to split lines properly.

3) Directories need to be removed in reverse order.
Localizew the OLDPWD fixing to within functions
Refine submodule skipping loginc
Remove Dotfile setup functionso

I never ended up using them, just cloning the repo myself.