Slightly more modular.
Can load from a file or a string.