Problem descriptions moved to XML, Solutions refactored for extensibility