change most methods to static, implemented ai