I manually SSH'd to the slave machine, changed to the root directory, and then listed the files there. There was no slave.jar listed. I then ran this command in the root dir:
which downloaded the jar as expected. Finally I went back to the build server web UI, selected the node in Build Executor status, and selected 'Launch slave agent' - success!
java full version "1.7.0_51-b13"
Launching slave agent: java -jar /slave.jar
<===[JENKINS REMOTING CAPACITY]===>Slave.jar version: 2.49
This is a Unix slave
Slave successfully connected and online
So it appears that the location the slave.jar is copied and the location that is used to launch it are not the same, and it appears to be launching it expecting it to be in the root.