Functionalized the moves into a class, define_singleton_method