Clean up the structure of some source code

New **protocol** module *<ripple/protocol/>* contains what was in src/ripple/data/protocol. Each file now includes what it uses.
Reviewers: @josh-ripple @donovanhide 
Side observation: It's interesting that not all Stoppables are threads and not all threads have names. Would be good to clear up some of the confusion that can result from those two facts.