Adjust exception messages
Add new exception classes for some common errors
Use default member initializers and constructor delegation
Use size_t for sizes in I/O classes
Implement controls for file descriptor inheritance
Make certain functions pure virtual so I won't forget to implement them
Return -1 from Slice::get at eof
Fix end-of-file detection in Slice Prepare_op was incorrectly adding start_offset to the remaining length.
Synchronize access to the underlying object of Slice This was prompted by the interactions between GL::ResourceManager and some upcoming changes to DataFile::PackSource. If a new Slice object is created and tries to connect to signal_flush_required at the exact moment another Slice is seeking and causing the signal to be emitted, the emit and connect calls step on each others' toes and corrupt the heap.
Fix seeking of Slice
Add an I/O class to access a restricted range of bytes from another object