rewrite binary protocol with binary from scratch

only implemented write part for now.
only use dict in thrift_spec is prefered
use new binary protocol in benchmark.py
faster write with only one pack per write