abstracting ruby wrapper