added most base get functionality