made gem more memory efficient, using hashes as responses instead of openstructs