Replace error() by systemerror() where appropriate

No other semantics should have changed.
More error() -> systemerror()

But this batch needed ios' seek and skip to report whether their failure
has set errno (return -1) or not (-2). I've greped for them in order not
to miss any possible repercussions.
Additional missing systemerror() calls.
Fixes in error-handling of fs.jl.
`flush` return value from Void to Cint
From -one(Coff_t) to -1
Added comments explaining the return -1/-2.
Merge pull request #5299 from lucasb-eyer/master

Improved error handling in base