Use filesystem for getMimeType()
Add 1-sec runtime-caching for File::read
Remove File::append()
Use filesystem for File::readFirstLine
Revert read cache
Remove File::setPermissions()
Remove unused File::_openFileHandle
Delete tmp file after upload
Remove existence check in File constructor
Removed CM_File::exists()
Made CM_File::getModified() no static
Removed validateImage from constructor; added test;
Refactored Image to use filesystem
Introduce File::ensureParentDirectory
Simplify userContent file, streamline with CM_File