[fix] use binary-pack module so we only need to npm install one extra dependency for binary support