Modify interfaces to support JSON objects for args

Go getters shouldn't include the `Get` part, i.e. this should be `Logger`.
https://golang.org/doc/effective_go.html#Getters