derive Eq typeclass
add another spec.
add average fn.
don't use anons.
add more specs and move fns around.
add another spec.
add min val fn.
rename fn.
tidy up.
add another spec.