wrapping libuv signal for use in Rust
descriptive names
easier-to-use api
reorganize and document