make token_distribution pub instead of pub(crate)
Given that start_private_tally and public_tally need it and are public (there is no way to call them without a way of constructing the types). These functions are used at least in catalyst-toolbox, so there is at least one place where those constructors are needed.