4-01 rewrite function to use case.

And in this example it looks much naicer, mainly because we do not have
to repeat guard each time.
Bit of haskel alighning.
Explicite delegation.

That way we can see (and not figure out) how does "defaulp" behaviour
look like.