Data science

I tried to address all comments/feedback from Joe and Sophia from last review.
Also tried to separate tests into happy/sad/error - not much material there.

`@bernoullis.map { |b| component(b) }.inject(:+)` is more readable