Parser: better year parsing on *NIX lists

When getting a *NIX-like list, the library is using the local machine's current year to guess the modification date of a directory/file which can be wrong.

Even though FTP's lists are a mess, most of them seem to be using the ls behavior:
```For files with a time that is more than 6 months old or more than 1 hour into the future, the timestamp contains the year instead of the time of day.```

Because of the lack of timezone support in the FTP standards, it's not always possible to guess the right year, but it's possible to improve the guess.

This patch wasn't fully tested.

I've put lots of comments (because I needed them - dealing with dates + timezones can get complicated), feel free to get rid of them.