Part 2 finished; now for documentation.