split: Initial import

Signed-off-by: Akira Hayakawa <ruby.wktk@gmail.com>

----

v2 -> v3

* rebase to the current master
* Add to Cargo.toml