*** empty log message ***
diff --git a/development/miscdocuments/ServerToolsUseCases.html b/development/miscdocuments/ServerToolsUseCases.html
index 3e8fb49..4b81287 100644
--- a/development/miscdocuments/ServerToolsUseCases.html
+++ b/development/miscdocuments/ServerToolsUseCases.html
@@ -20,7 +20,7 @@
 		</TD>
 
 
-      <font class="indexsub">  </font></td>
+</td>
 
 <!--    <td width="19%" rowspan="2"><img src="images/Idea.jpg" height=86 width=120></td> -->
 
@@ -55,10 +55,8 @@
 use cases which can be used to define SPI's. </p>
 </td>
 </tr>
-<tr> 
-
-    <td colspan="2" align="left" bgcolor="#0080c0" valign="top"><b><font color="#ffffff" face="Arial,Helvetica">Use Cases</font></b></td>
-
+<tr>
+    <td colspan="2" align="left" bgcolor="#0080c0" valign="top"><b><font color="#ffffff" face="Arial,Helvetica">End User Use Cases</font></b></td>
   </tr>
   <tr>
   <td>
@@ -67,21 +65,18 @@
 		<tr>
 			<th style="width: 108px">Name</th>
 			<th style="width: 60px">Priority</th>
-			<th style="width: 78px">User</th>
 			<th style="width: 360px">Description</th>
 		</tr>
 		<tr>
-			<td style="width: 108px">Install a Server</td>
-			<td style="width: 60px">2</td>
-			<td style="width: 78px">End-user</td>
-			<td style="width: 360px">From an update site, user can install a
+			<td>Install a Server</td>
+			<td>2</td>
+			<td>From an update site, user can install a
 			server (using Eclipse standard update manager functions).</td>
 		</tr>
 		<tr>
-			<td style="width: 108px">Configure a Jakarta-tomcat</td>
-			<td style="width: 60px">1</td>
-			<td style="width: 78px">End-User</td>
-			<td style="width: 360px">Given a Jakarta-tomcat server (V5) installed
+			<td>Configure a Jakarta-tomcat</td>
+			<td>1</td>
+			<td>Given a Jakarta-tomcat server (V5) installed
 			on local file system, user can &quot;install&quot; a server to WTP by
 			selecting from a list of available server adapters, selecting the one
 			for Jakarta-tomcat server, and specifying location of server's
@@ -96,19 +91,22 @@
 			</table>
 			</td>
 		</tr>
+
 		<tr>
-			<td style="width: 108px">get list of server adapters</td>
-			<td style="width: 60px">1</td>
-			<td style="width: 78px">client programs (unit test)</td>
-			<td style="width: 360px">programmatically get list of known
-			Jakarta-tomcat servers adapters and their associated information
-			(name, version, whether installed or not, etc)</td>
+			<td>Export ANT build scripts for modules</td>
+			<td>1</td>
+			<td>User exports ANT build script that compiles and packages a module in for use outside the Eclipse, possibly for automated builds. </td>
 		</tr>
 		<tr>
-			<td style="width: 108px">run on J2EE server</td>
-			<td style="width: 60px">1</td>
-			<td style="width: 78px">End-user</td>
-			<td style="width: 360px">user can select a JSP and &quot;run on
+			<td>Drag a module/artifact to a server to publish it</td>
+			<td>3</td>
+			<td>Users drags a module or a artifact in it into a server, which would mean the same action as &quot;Run on Server&quot; .</td>
+		</tr>
+
+		<tr>
+			<td>run on J2EE server</td>
+			<td>1</td>
+			<td>user can select a JSP and &quot;run on
 			server&quot;, meaning it will be displayed in Eclipse web browser.
 			<table border="1">
 				<tbody>
@@ -139,57 +137,184 @@
 			</table>
 			</td>
 		</tr>
-					<TR>
-						<TD style="width: 108px">run on HTTP server</TD>
-						<TD style="width: 60px">1</TD>
-						<TD style="width: 78px">End-user</TD>
-						<TD style="width: 360px">User can select an HTML file, and &quot;run on server&quot;. This use case can be performed with WST only. (This use case has not gotten a lot of discussion, but support for &quot;static projects&quot; is mentioned in WTP/WST vision statement, and is a good case to make sure the architecture and design is correct). </TD>
-					</TR>
-					<tr>
-			<td style="width: 108px">get list of installed servers</td>
-			<td style="width: 60px">1</td>
-			<td style="width: 78px">client programs (unit test)</td>
-			<td style="width: 360px">programmatically get list of installed
+		<TR>
+			<TD>run on HTTP server</TD>
+			<TD></TD>
+			<TD>User can select an HTML file, and &quot;run on server&quot;. This use case can be performed with WST only. (This use case has not gotten a lot of discussion, but support for &quot;static projects&quot; is mentioned in WTP/WST vision statement, and is a good case to make sure the architecture and design is correct). </TD>
+		</TR>
+
+		<tr>
+			<td>Adapt to existing project/module layout<i>(I am not sure, this is may be a use case for project layout)</i></td>
+			<td>1</td>
+			<td>User describes the current project layout even if it is not a known layout of any kind. </td>
+		</tr>
+
+		<tr>
+			<td>Add runtime</td>
+			<td>1</td>
+			<td>Add a new server runtime environment that exists on the user's machine. (Pick runtime from list. Enter name, location. Enter runtime specific information.)</td>
+		</tr>
+
+		<tr>
+			<td>Edit or remove runtime</td>
+			<td>1</td>
+			<td>Modify runtime attributes or remove.</td>
+		</tr>
+
+		<tr>
+			<td>Target project</td>
+			<td>1</td>
+			<td>Target a project to a specific runtime. This is optional and a project may only be targetted to one runtime at a time. (Some project types do
+                not need a target, some projects do need a target)</td>
+		</tr>
+
+		<tr>
+			<td>Add server</td>
+			<td>1</td>
+			<td>Add (install) a new server. Enter name & hostname, pick a server type from a list, and enter server specific information. (Some server types may only support local, not remote. Some local servers may require a runtime.)</td>
+		</tr>
+
+		<tr>
+			<td>Edit or remove server</td>
+			<td>1</td>
+			<td>Modify server attributes or remove.</td>
+		</tr>
+
+		<tr>
+			<td>Start/Stop/Restart</td>
+			<td>1</td>
+			<td>Each server type may support some/all/none of these state changes. Each server type has an initial state (may be unknown), and must keep the state in sync once it is loaded. 
+                Some of the state changes (start/stop) are not available unless the server is in the correct state. Console/Debug view, etc. should be sync'ed up or used as it makes sense
+                for the server type. Starting may be done in the regular Eclipse launch modes, e.g. Run, Debug, Profile, ... depending on what the server supports. Launch Configurations are
+                created and used as applicable.</td>
+		</tr>
+
+		<tr>
+			<td>Add project</td>
+			<td>1</td>
+			<td>Add a module to a server. User is presented with a list of modules that are available to be added to the server, as well as a list of modules from the workspace that are
+                already on the server. In some cases, the server may present additional modules in the second list that are not from the workspace/user. User can move modules around and
+                when they are done, the module is configured on (and possibly published to) the server.</td>
+		</tr>
+
+		<tr>
+			<td>Remove project</td>
+			<td>1</td>
+			<td>Same as above</td>
+		</tr>
+		
+		<tr>
+			<td>Publish/Sync</td>
+			<td>1</td>
+			<td>One way publish of all modules to a particular server. Syncs the module content - could be a delta or a full refresh depending on the implementation.</td>
+		</tr>
+
+		<tr>
+			<td>Restart module</td>
+			<td>1</td>
+			<td>Optional based on server type support. Restart/refresh/remove cache for a particular module on the server to allow the newly published content to be served.</td>
+		</tr>
+
+		<tr>
+			<td>Change notification</td>
+			<td>1</td>
+			<td>User makes a change to a module (e.g. edit a file). User should be notified of the impact to any running servers and what they need to do to get the change
+			    propogated to the server. (e.g. nothing, republish, restart module, restart server) </td>
+		</tr>
+		
+		<tr>
+			<td>Auto update</td>
+			<td>2</td>
+			<td>Automatically or via a single click, do the above use case to keep server in sync at all times.</td>
+		</tr>
+		
+		<tr>
+			<td>Run/Debug/Profile on Server</td>
+			<td>1</td>
+			<td>From any artifact (UI selection, editor input, etc.), determine which module it belongs to, prompt to choose or create a server if necessary, publish/sync the module on the server, and display an
+			    appropriate client to access (run) that artifact on the server.</td>
+		</tr>
+		
+<!--		<tr>
+			<td></td>
+			<td>1</td>
+			<td></td>
+		</tr>-->
+
+	</tbody>
+</table>
+</td></tr>
+
+<tr>
+    <td colspan="2" align="left" bgcolor="#0080c0" valign="top"><b><font color="#ffffff" face="Arial,Helvetica">API Use Cases</font></b></td>
+  </tr>
+
+
+<tr><td>
+ <table width="95%" border="1" cellpadding="1" cellspacing="1">
+	<tbody>
+		<tr>
+			<th style="width: 108px">Name</th>
+			<th style="width: 60px">Priority</th>
+			<th style="width: 360px">Description</th>
+		</tr>
+
+		<tr>
+			<td>Create module type(s)</td>
+			<td>1</td>
+			<td>Define a new type of module (interface and id) so that other SPI providers can provide instances of these module or servers that support them.</td>
+		</tr>
+
+		<tr>
+			<td>Provide module factory</td>
+			<td>1</td>
+			<td>Define a new module factory for creating/discovering the modules of an existing type. (.modules file?)</td>
+		</tr>
+		
+		<tr>
+			<td>Define runtime type</td>
+			<td>1</td>
+			<td>Define a new runtime type, along with the module types that it supports. Define what it means to target a project to this runtime.</td>
+		</tr>
+		
+		<tr>
+			<td>Define server type</td>
+			<td>1</td>
+			<td>Define a new server type, along with the module types this it supports. Provide implementations for add/remove modules, publishing, start/stop, etc.</td>
+		</tr>
+		
+		<tr>
+			<td>get list of server adapters</td>
+			<td>1</td>
+			<td>programmatically get list of known
+			Jakarta-tomcat servers adapters and their associated information
+			(name, version, whether installed or not, etc)</td>
+		</tr>
+		<tr>
+			<td>get list of installed servers</td>
+			<td>1</td>
+			<td>programmatically get list of installed
 			servers and their associated information (name, etc)</td>
 		</tr>
 		<tr>
-			<td style="width: 108px">import/export server configuration</td>
-			<td style="width: 60px">2</td>
-			<td style="width: 78px">client programs</td>
-			<td style="width: 360px">Can import or export server configuration
+			<td>import/export server configuration</td>
+			<td>2</td>
+			<td>Can import or export server configuration
 			files, such as to give to another member of team. This file may best
 			be in XML format.</td>
 		</tr>
 		<tr>
-			<td style="width: 108px">Server Providers can provide discoverable adapter</td>
-			<td style="width: 60px">1</td>
-			<td style="width: 78px">Service Providers</td>
-			<td style="width: 360px">The information needed to be listed as potential server adapter can be found completely in plugin.xml (not Java code, which would require activation of plugin). </td>
+			<td>Server Providers can provide discoverable adapter</td>
+			<td>1 - SPI</td>
+			<td>The information needed to be listed as potential server adapter can be found completely in plugin.xml (not Java code, which would require activation of plugin). </td>
 		</tr>
+
 		<tr>
-			<td style="width: 108px">Export ANT build scripts for modules</td>
-			<td style="width: 60px">1</td>
-			<td style="width: 78px">End-User</td>
-			<td style="width: 360px">User exports ANT build script that compiles and packages a module in for use outside the Eclipse, possibly for automated builds. </td>
+			<td>Provide classloader behavior</td>
+			<td>1</td>
+			<td>A client, a jsp/ejb compiler for example, learns the classloader behavior to mimic the server runtime environment</td>
 		</tr>
-		<tr>
-			<td style="width: 108px">Drag a module/artifact to a server to publish it</td>
-			<td style="width: 60px">3</td>
-			<td style="width: 78px">End-User</td>
-			<td style="width: 360px">Users drags a module or a artifact in it into a server, which would mean the same action as &quot;Run on Server&quot; .</td>
-		</tr>
-		<tr>
-			<td style="width: 108px">Provide classloader behavior</td>
-			<td style="width: 60px">1</td>
-			<td style="width: 78px">client programs</td>
-			<td style="width: 360px">A client, a jsp/ejb compiler for example, learns the classloader behavior to mimic the server runtime environment</td>
-		</tr>
-				<tr>
-			<td style="width: 108px">Adapt to existing project/module layout<i>(I am not sure, this is may be a use case for project layout)</i></td>
-			<td style="width: 60px">1</td>
-			<td style="width: 78px">End-User</td>
-			<td style="width: 360px">User describes the current project layout even if it is not a known layout of any kind. </td>
-		</tr>
+
 	</tbody>
 </table>
   </td>