[REFACTOR] use self.included hook to allow instance methods