Pass testCache

Various fixes to pass testCache
- Fixed bit operations in HeapPage.isSlotUsed()
- Fixed BufferPool not buffering pages
- Reimplemented HeapPageIterator
- Cleaned RecordId