Third revision of leap in Go

I still wasn't content with the overly complex `if` structure. I started
this rewrite trying to write it using the Go's flexible `switch`
statement but while rewriting I decided to use predicates to make it a
bit more readable (even though it's really verbose for a problem this
simple).

See the exercism.io submission for context:
http://exercism.io/submissions/b4a2d763c0872b381c37337e