file: add mkdir function
optional: fix copy ctor/assign and swap
entry::attribute_get: also catch std::out_of_range

Which might be thrown by entry::attribute function.