Store on_event commands in a list

Using dictionaries shuffles the order of the commands around and it so
happens that:

    @on_event   LOAD_COMMIT    js page string 'uzbl = {}'
    @on_event   LOAD_COMMIT    js page file @scripts_dir/formfiller.js
    @on_event   LOAD_COMMIT    js page file @scripts_dir/follow.js

is run in the following order:

    js page file @scripts_dir/follow.js
    js page string 'uzbl = {}'
    js page file @scripts_dir/formfiller.js

which causes all kinds of fun. Instead, run commands in the order
they're requested in. It may not be perfect, but it hides Python
internals (hash order of the command) from the user. It does allow for
running the same command twice from a single event if it is bound twice,
but we don't have a way to remove events, but that's, IMO, better than
shuffled order of any commands you'd like to run.