define actual methods on registering, don't rely on method_missing