Document all functions.
Finish the spec.
Add nice README.