diff --git a/www/demo/what is this directory.txt b/www/demo/what is this directory.txt
new file mode 100644
index 0000000..47d5d4e
--- /dev/null
+++ b/www/demo/what is this directory.txt
@@ -0,0 +1,15 @@
+This is for the LLVM+Clang browser based demo.
+It is supposed to work like the LLVM+GCC demo here: http://llvm.org/demo/ but for the BSD licensed Clang instead.
+
+Perhaps it could also be used for getting crash information and details on errors....  I'm not sure if this would require some major changes or not to report this info.  Maybe also adding ways that people can use it to test for errors and a way to report such errors would also be good.
+
+Status:
+Anyways, right now, these file a basically just a copy of the LLVM+GCC demo (no changes have been made).  The files don't even work right in this location on the server.  As such, someone will need to edit the file or rewrite it.
+
+If nobody in the LLVM community has the skills, one suggestion would be to post a request on a friendly Perl forum and see if anybody might be interested in taking on the challenge.
+
+Alternatively, you could try a PHP, Python, Ruby, or Lisp mailing list and see if there are any takers who would be interested (and willing to do a rewrite to their language of choice).
+
+--
+BTW, once this feature was working, my intention was to link to it from the index.html page in the section entitled:
+Try Clang
\ No newline at end of file
diff --git a/www/index.html b/www/index.html
index c2db94a..85783fe 100644
--- a/www/index.html
+++ b/www/index.html
@@ -1,49 +1,49 @@
-<!-- Material used from: HTML 4.01 specs: http://www.w3.org/TR/html401/ -->
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
-	<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-	<title>Clang c-lang parser for LLVM</title>
-	<link type="text/css" rel="stylesheet" href="menu.css" />
-	<link type="text/css" rel="stylesheet" href="content.css" />
-</head>
-<body>
-	<!--#include virtual="menu.html.incl"-->
-	<div id="content">
-		<h1>Clang: a C language front-end for LLVM</h1>
-		<h2>About</h2>
-		<p>The goal of the Clang project is to create a new <a href="http://llvm.org/svn/llvm-project/cfe/trunk/LICENSE.TXT">BSD Licensed</a> C, C++, & ObjC front-end for the <a href="http://www.llvm.org/">LLVM</a> compiler.
-		<br><br>
-		<p>In the context of this website, the term Clang actually refers to two things:
-		<p>1) A "code name" for the LLVM compiler front-end.
-		<p>2) A specific library in the LLVM front-end -- in particular the "driver" that makes all the other libraries work together.
-		<br><br>
-		<p>The developers of Clang include contributers from Apple and numerous other volunteers.
-		<h2>Why?</h2>
-		<p>The development of a new front-end was started out of a need -- a need for a compiler that allows better diagnostics, better integration with IDEs, a license that is compatible with commercial products, and a compiler that is easier to develop and maintain.  All of these were motivations for starting work on a new C/C++/ObjC front-end that could meet these needs.
-		<p>An excellent introduction to Clang can be found in the following video lectures:
-		<ul>
-			<li><a href="clang_video-05-25-2007.html">Clang Introduction</a>
-			<li><a href="clang_video-07-25-2007.html">Features and Performance of Clang</a>
-		</ul>
-		<h2>Features/Goals</h2>
-		Some of the goals for the project include the following:
-		<ul>
-			<li>Real-world, production quality compiler.</li>
-			<li>A single unified parser for C/ObjC/C++</li>
-			<li>Language conformance with C, ObjC, C++ (including variants, like C90, C99, etc)</li>
-			<li>GCC compatibility (supports GCC extensions, but allow them to be disabled)</li>
-			<li>Library based architecture with finely crafted C++ API's</li>
-			<li>High performance</li>
-			<li>Design for integration with IDEs as well as code generation with <a href="http://llvm.org">LLVM</a>.</li>
-			<li><a href="features.html#expressivediags">Expressive diagnostics</a></li>
-			<li>BSD License</li>
-		</ul>
-		Of course this is only a rough outline of the goals and features of Clang.  To get a true sense of what the new LLVM front-end is all about, as well as why you might want to considering using it, see the <a href="features.html">Features</a> section.
-		<h2>Try Clang</h2>
-		If you are a compiler developer and want to try out Clang, then build instructions are available on the <a href="get_involved.html#build">Get Involved</a> page.  Note that clang is still early in development.  If you are looking for source analysis or source-to-source transformation tools, clang is probably a great solution for you.  If you want to use it as a drop in C compiler, it is not yet ready.
-		<h2>Get Involved</h2>
-		If you are interested in working on Clang, then check out the <a href="get_involved.html">Get Involved</a> section.
-	</div>
-</body>
+<!-- Material used from: HTML 4.01 specs: http://www.w3.org/TR/html401/ -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html>
+<head>
+	<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+	<title>Clang c-lang parser for LLVM</title>
+	<link type="text/css" rel="stylesheet" href="menu.css" />
+	<link type="text/css" rel="stylesheet" href="content.css" />
+</head>
+<body>
+	<!--#include virtual="menu.html.incl"-->
+	<div id="content">
+		<h1>Clang: a C language front-end for LLVM</h1>
+		<h2>About</h2>
+		<p>The goal of the Clang project is to create a new <a href="http://llvm.org/svn/llvm-project/cfe/trunk/LICENSE.TXT">BSD Licensed</a> C, C++, & ObjC front-end for the <a href="http://www.llvm.org/">LLVM</a> compiler.
+		<br><br>
+		<p>In the context of this website, the term Clang actually refers to two things:
+		<p>1) A "code name" for the LLVM compiler front-end.
+		<p>2) A specific library in the LLVM front-end -- in particular the "driver" that makes all the other libraries work together.
+		<br><br>
+		<p>The developers of Clang include contributers from Apple and numerous other volunteers.
+		<h2>Why?</h2>
+		<p>The development of a new front-end was started out of a need -- a need for a compiler that allows better diagnostics, better integration with IDEs, a license that is compatible with commercial products, and a compiler that is easier to develop and maintain.  All of these were motivations for starting work on a new C/C++/ObjC front-end that could meet these needs.
+		<p>An excellent introduction to Clang can be found in the following video lectures:
+		<ul>
+			<li><a href="clang_video-05-25-2007.html">Clang Introduction</a>
+			<li><a href="clang_video-07-25-2007.html">Features and Performance of Clang</a>
+		</ul>
+		<h2>Features/Goals</h2>
+		Some of the goals for the project include the following:
+		<ul>
+			<li>Real-world, production quality compiler.</li>
+			<li>A single unified parser for C/ObjC/C++</li>
+			<li>Language conformance with C, ObjC, C++ (including variants, like C90, C99, etc)</li>
+			<li>GCC compatibility (supports GCC extensions, but allow them to be disabled)</li>
+			<li>Library based architecture with finely crafted C++ APIs</li>
+			<li>High performance</li>
+			<li>Design for integration with IDEs as well as code generation with <a href="http://llvm.org">LLVM</a>.</li>
+			<li><a href="features.html#expressivediags">Expressive diagnostics</a></li>
+			<li>BSD License</li>
+		</ul>
+		Of course this is only a rough outline of the goals and features of Clang.  To get a true sense of what the new LLVM front-end is all about, as well as why you might want to considering using it, see the <a href="features.html">Features</a> section.
+		<h2>Try Clang</h2>
+		If you are a compiler developer and want to try out Clang, then build instructions are available on the <a href="get_involved.html#build">Get Involved</a> page.  Note that clang is still early in development.  If you are looking for source analysis or source-to-source transformation tools, clang is probably a great solution for you.  If you want to use it as a drop in C compiler, it is not yet ready.
+		<h2>Get Involved</h2>
+		If you are interested in working on Clang, then check out the <a href="get_involved.html">Get Involved</a> section.
+	</div>
+</body>
 </html>
\ No newline at end of file
diff --git a/www/status.html b/www/status.html
index e4c6ce9..7df2bd1 100644
--- a/www/status.html
+++ b/www/status.html
@@ -9,6 +9,26 @@
 </head>
 <body>
 	<!--#include virtual="menu.html.incl"-->
+	<!--
+		Note to anyone editing this page:
+		The "By Language" section is basically setup so that you
+		1) Include a simple 1 or 2 word status by the language.
+		2) Note a key points (whatever it may be) about the status.
+
+		The "By Library" section was intended to be a little more detailed.
+		Basically, take the same idea of a 1 or 2 word status and fill it in.
+
+		If percentages would be better than a 1 or 2 word status,
+		then that's possible as well.
+
+		Lastly, is the "Status History" where you can make a few points about
+		the updates that you made to the status page -- to give people kind of
+		and idea of the progress of things.
+
+		Perhaps following the 3 month LLVM release cycle might be one possible
+		way to establish a regular schedule of updating the page -- supposing
+		that 3 months would not be too often.
+	-->
 	<div id="content">
 	<h1>Status of Clang</h1>
 	Here is a rundown of the current status of Clang as of September 2007.
@@ -51,7 +71,7 @@
 			</td>
 		</tr>
 	</table>
-	<h2>By library:</h2>
+	<h2>By Library:</h2>
 	<table>
 		<tr>
 			<td>Library</td>
diff --git a/www/todo.txt b/www/todo.txt
new file mode 100644
index 0000000..7fc80b1
--- /dev/null
+++ b/www/todo.txt
@@ -0,0 +1,16 @@
+This is just a list of some concepts for the site that might be of interest to anyone making changes in the future:
+
+
+*) Style
+I was a little worried about the style of the site... especially the color choices.  I felt that the color choices were not quite right to project the proper image for a serious compiler project.
+
+*) Menu...
+the menu is on the left now, but I also had a design where the menu was across the top....  If the page eventually gets integrated with the style/layout of the rest of the llvm.org site and ends up adding a lot of LLVM menus, then it might be necessary to go back to the top menu or figure out some other unique way of handling the side menu.
+
+*) Features page
+The features page was inspired by the features tour of the BeOS website from years back.  However, it may be necessary (and better for the image of Clang) to actually tone down the statements made on the features page so that they do not sound so glossed over and promotional... instead maybe aim a little more for the compiler developer audience who is very technically minded, by making things a little more raw and technical (and being completely honest about strengths and weaknesses instead of over-hyping so many points like I, unfortunately, ended up doing).
+
+*) Status page -- it just needs to be filled out... :) basically the idea was to updated every so often with the status of things and maybe make a little note of what changed as the bottom, along with the date.  [Maybe an update every LLVM release, which is every 3 months?]
+
+*) Getting involved
+The "available tasks" section is hidden at the bottom... after the long examples section.  I'm not sure how to better do things there, but just noting a possible issue.
\ No newline at end of file
