Remove hardcode commands

This now dynamically populates the commands available for each data type in qiita_pet.

It also adds functionality to the Command object to pull out a dictionary of commands keyed to the datatype they are for.
Because this way we can do direct SQL statements like `SELECT * FROM qiita.jobs WHERE opts = optsdict` and just pass the strinigified, sorted JSON as opsdict. This is the only way we know we can get the string match.