[SPARK-4861][SQL] Refactory command in spark sql

Remove ```Command``` and use ```RunnableCommand``` instead.

Okay, I see the problem now.  These commands still live inside of catalyst and thus cannot be `RunnableCommands`.  I would argue that that should be changed.  My whole goal here was to eliminate boilerplate from the planner and this still seems to have a bunch of it.  That said, this could be done in a follow up PR.