Type signature for update and view

init should return (Model, Cmd Msg), not (Msg, Cmd Msg). For some reason the compiler error got a bit confusing.