commands: introduce command providers

You can force a command provider by using it's id followed by :
For example, to get a python command, you can do:

  py: hex(10)

Of course, the python command isn't finished yet.