Added random partitioning, command line options, ability to run program multiple times and modified the mod partitioning to better handle ratios like 1:9