bottle.py may be a single file but it's 4,425 lines long. That doesn't strike me as particularly simple. Any project could potentially be "a single file" if it's a very long file.
Why would splitting it into a few separate files make it more complex? There's a reason why every modern programming language supports modules, and that's precisely to break down complexity into smaller, simpler units.