Adds a -wallet argument that can be passed to the client to determine the name of the wallet file and where it should be located.
It works like this: $ ./bitcoind -It will use [datadir]/wallet.dat as the wallet
$./bitcoind -wallet=mywallet -It will use [datadir]/mywallet
$./bitcoind -wallet=/tmp -It will use /tmp/wallet.dat
$./bitcoind -wallet=/tmp/mywallet -It will use /tmp/mywallet
If your wallet is in a directory other than the datadir, bitcoin will create another .lock file in that directory (originally, I tried using the wallet file itself as the lock file, but bdb didn't like opening a locked file).
Let me know if you have questions or if I've missed anything.