Type ADTs, started working on the typer.