Update bottom_up order of arguments and function defaults. Also change zeros from a string argument to a boolean which is a more robust and commonly encountered way of specifying a binary argument
Style updates to increase readability of code by adding spaces between algebraic operators. Change order or arguments in the random partition algos so that the required arguments without default settings are listed first. Change the zeros argument from string to boolean.  Updated doc strings to list arguments of functions.
Major revision to code to reduce the amount of redundancy in the code shared between the algorithims.  Reducing this redundancy makes it easier to see how the algorithims differ.
Update argument descriptions in doc strings.