Major parser overhaul.