* _forward is renamed forward since users should override it * some __call__ overrides are changed to forward * function which return a single variable are changed to return that variable instead of a one-element tuple