Upgrade the documentation system to be more versatile