File class members are encapsulated, and internal lock was added.

A lock was added to the file class to properly handle multiple threads accessing the self encryptor. Actual chunk storage and incrementing is still a work in progress.

This technically completes JIRA ticket MAID-153 too.
Yes, I find `std::min<T>(a, b)` more general, because I do not need to specify which of the parameters must be converted.