Docs.
Either is public.
Move parsing to its own file.
Move Either to its own file.