refactoring, all distributions in same file and now using defmulti and defmethod for distributions