add File#flock.
fix descriptor leakage.
don't retry when we cannot fork(2).

EAGAIN indicates the system is under heavy load.
Retrying make things worse.
style
syswrite must write to fd2 if it is properly set.

closes #3.
Merge branch 'master' of https://github.com/iij/mruby-io