Use getattr for looking up plugin methods

Patch from Justin Azoff to simplify plugin code.  This patch changes
the previous behavior slightly because instead of only calling the
cmd_XXX_pre/post functions for plugins that override the base class
function, now we always call the function (the base class function
is always just a noop, so this doesn't produce any side effects).
Also, in the event of a future bug in broctl where the getattr lookup
fails, then broctl will now terminate with a Python stack trace
instead of silently ignoring the problem.