FileUploader first commit.

Collects files, renames them upon size and age constraints, tests the above.

Lots of ```TODO(dkorolev)```. And time to discuss export events in more detail.
it deserves a typedef Files[Container]T