Changed CommandSequence to implement ReversibleCommand instead of
Command.
Changed list of commands of a CommandSequence to consist of any kind of
object to support non-Reversible commands, such as those to be created
by collectors (product- and consume command).

Signed-off-by: Jakob Brandsborg Ehmsen <jakobehmsen.github@gmail.com>