Reorg again :-(

this time the repo has two golang unit(one executable and one
library). This will be easy for maintainship and flexible for
code reuse

Signed-off-by: Boqun Feng <boqun.feng@gmail.com>