Added :read_link option, doesn't break current tests, needs new tests
Added File.lstat and File.lstat! functions and associated tests.
These functions are elixir versions of the unix lstat function.
Based on email from Paulo Almeida, I removed the apparently extranous calls
to IO.char_data_to_string in the stat! and lstat! methods.
Revert "Based on email from Paulo Almeida, I removed the apparently extranous calls"

This reverts commit cd5ed1db59d1f93197fef72311e59cb42ed2ebc4.

Based on looking in the rest of file.ex and the foo and foo! methods,
they all use this same pattern. It's really kind of moot since
IO.char_to_string is almost always a single if_string return.

Either they should all be fixed, or they should all stay the same.

It might make sense to write a generalized bang macro.
Revised tests to use tmp_path for file paths.
Merge pull request #2814 from bbense/file-lstat

File lstat implementation