Implement a Distribution class and remove DistributionComputer