Add `file_name`, `dir_path` and `file_path` to `MR::Factory`

This adds file and dir helpers to `MR::Factory`. These are just
special strings that take the format of file names or paths. A
file name is a random string with a random 3 letter extension. A
dir path is a random strings joined with a file separator (`/`).
A file is the combination of the previous two. This just allows
data generated by the factory to be more expressive and better
mimic real data.

This also slightly tweaks the factory slug. It now defaults to
only 8 characters instead of 10. This splits it into 2 even
segments. This also uses simpler to comprehend tests for the
slug. This was to avoid slugs that were lopsided (two 4 character
segments with one 2 character segment) and make the tests easier.

Closes #137