Make the path functions work in bash and pdksh.
Make the path functions work in bash and pdksh.

This makes the path functions work on both OSX and OpenBSD.  I haven't
yet tried any of this on Linux.

OpenBSD's pdksh doesn't understand the "${!NAME}" syntax for indirect
variable referencing, which means I had to figure out a more portable
way to handle indirect variable referencing.  This code at least
achieves that goal, in that works on pdksh and bash 3.2 (OSX).  Minimal
testing with bash 4.2 tells me it works there, too.

The problem with this (as I see it) is that this solution uses eval with
user-supplied things.  I've tried to escape and string-quote everything
so that bad things don't happen, but I haven't tested ALL THE WAYS this
could be potentially exploited.  If the functions didn't let the user
specify a PATH variable to manipulate, then it would all be a LOT
easier.

Crosse/dotfiles,Crosse/dotfiles,Crosse/dotfiles,Crosse/dotfiles