annoyingness with source is fixed, mostly, but there are still some problems with indentation. I'll fix them later.