Add a large amount of documentation to haas.model.

A little bit---this is changing pretty soon anyways, but it's definitely better than what we have right now