Replace Init with NewClient

This is slightly more idiomatic go. Instead of creating a struct and
passing it to Init, we replace Init with NewClient which both creates
the struct and initializes it.