Heavy documentation overhaul.