Move cmd_(eval|function) to all objects of the ipc tree

They were in the manager object only previously, now they are in CommandObject, which means all subclasses have it (including manager)

Now it's possible to use eval() from any part of qsh, for example:

    group['term']> eval("self.windows")
    (True, 'set([Window(st)])')

Or have keybindings that work on a specific kind of object:

    Key([mod], "x", lazy.window.function(lambda w: w.setOpacity(0.5))),

Figuring out any useful things to do with these is left as an exercise for the reader.