See documentation of Html
Except, the types here are intentionally fully exposed. The helper functions exists merely to make writing them feel like elm/html et al