adds a uniform distribution strategy which uniformly allocates the distribution across all asset classes
adds NotEnoughMoneyException so we know when this happens in the monte carlo simulator