Redo base API, started validating with 'in memory' tests