Another merge, but we should probably move all the stuff written externally to a vendor/ directory.