Initial install commit.

What works:
-simple file to file destination install
-multiple files to folder destination install
- -t flag
- partially -m flag, right now accepts mode only on form [ugoa]+[+-=][rwx]+, but in current state should be relatively easy to expand

Any feedback is welcome, some parts of the code are ugly even for me.
The code from here to line 221 can be extracted as a separate function, seeing as it would be used in both `file_to_file` and `files_to_directory`.