To Do: - Configuration - User Preferences - store in an XML file (username.xml) - User Authentication -> ProxyServer - passes username string to Raveler, which creates a RavelerUser object - Virtual URLs - added when plugins are initialized (issue: what if plugins need to create virtual URLs while they are executing - Annotations) - stored in a Hashtable in Raveler - passed to RavelerManager when a request comes in - API - Initialization methods - UI - Configuration/Help - virtual URLs - Execution methods (static) - Modifying HTML - Error/Warning - add method to Raveler: String insertRavelerBanner(String page) - RavelerManager's handling of sending HTTPMessages to plugins - Plugin stack passed from Raveler