Make black_magic dependency optional

This allows the obsub module to be used as a drop-in more easily.

On the other hand this can have unexpected results when using functions
with default arguments without having black-magic installed:

You need to make sure, that all parameters that have default values in
your original event function have default values in all handlers as
well!