e2lib: split up stat() into lstat() and remove inconsistencies
This allows symlinks (not encouraged!) to work more consistently.
It also fixes a bug where we cached the symlink information instead of
the real file.
Prior to this change stat(foo, true) worked like posix stat(), while
stat(foo) or stat(foo, false) worked like lstat. This change undoes the
confusion, both functions work like their posix namesakes.