JS-287 Added getRawTextLength and refactored Backend.
Created interface Backend for AbstractBackend.
Improved OpenFileState implementations to have testament vectored file retrieval.
Made AbstractBook require a non null Backend.
Created NullBackend.
Removed getVersification from AbstractBackend. It wasn't used and is not true of all Backends.
Changed IOUtil.close(state) to OpenFileStateManager.release(state), a bug fix.
Removed Activation and Lock from SwordDictionary (GenBook remains).