Start revert and edit implementation plus test.

First we check if a list of files is provided.  If it is, revert only the specified 
files in the selected changelist.  Otherwise, I capture a list of files in the 
changelist, then revert all files in the changelist.

Test is just a stub at the moment.
merge perforce and GitHub edits together