Add FilePointer abstraction for core