initial backend and memory adapter implementation