Added support for put_dir, get_dir + better callbacks providing file name