done major refactoring and implement signal fd (not tested yet)

- implement signal fd (only for linux, because OSX kqueue have ident collision problem, it can be solved but ton of kqueue speciallized implementation seems to be required, so pending now)
I think it requires deep consideration if you don't want to lose performance in OSX)
- reorganize API namespace (see README.md)