diff --git a/eclipsetools-charter.php b/eclipsetools-charter.php
index ed73c16..50ee39e 100644
--- a/eclipsetools-charter.php
+++ b/eclipsetools-charter.php
@@ -34,13 +34,13 @@
 <div class="homeitem">
   <h3>The Eclipse Tools Project - Top Level Project Charter - The Eclipse Foundation</h3>
 
-  <p><b><span style='font-size:10.0pt;font-family:Arial'>Overview</span></b><span
-  style='font-size:10.0pt;font-family:Arial'><br>
+
+  <p><b>>Overview</b><br>
   The Eclipse Tools Top Level Project (the &#8220;Eclipse Tools Project&#8221;) is an open
   source software development project dedicated to developing a wide range of exemplary,
   extensible development tools, and tools-specific components for the Eclipse
   Platform. Typically, this would include tools for computer programming
-  languages (compilers, editors), performance tools, debuggers, and test tools.<o:p></o:p></span></p>
+  languages (compilers, editors), performance tools, debuggers, and test tools.</p>
   <p><b>Mission</b><br>
   The mission of Eclipse Tools Project is to foster the creation of a wide
   variety of exemplary, extensible tools for the Eclipse Platform. The Eclipse
@@ -50,8 +50,7 @@
   place where a single point for interaction and coordination for all tools
   developers can occur which will minimize overlap and duplication, ensure
   maximum sharing and creation of common components and promote seamless
-  interoperation between the diverse types of developed tools.<span
-  style="mso-spacerun: yes">&nbsp; </span>The Eclipse Tools Project will
+  interoperation between the diverse types of developed tools. The Eclipse Tools Project will
   promote the Eclipse vision and attempt to foster Projects that set the &#8220;gold
   standard&#8221; for tools implementers.</p>
   <p>The Eclipse Tools Project will use its experience in developing tools for
@@ -73,91 +72,61 @@
   The Projects under this Charter are managed by a group known as the Project
   Management Committee (the &#8220;PMC&#8221;).</p>
   <p>PMCs are expected to ensure that:</p>
-  <p style='margin-left:.5in;text-indent:-.25in;mso-list:l1 level1 lfo2;
-  tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol'>�<span
-  style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-  </span></span><![endif]>All Projects operate effectively by providing
+  <ul>
+  
+  <li>All Projects operate effectively by providing
   leadership to guide the Project&#8217;s overall direction and by removing
-  obstacles, solving problems, and resolving conflicts.</p>
-  <p style='margin-left:.5in;text-indent:-.25in;mso-list:l1 level1 lfo2;
-  tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol'>�<span
-  style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-  </span></span><![endif]>All Project plans, technical documents and reports
-  are publicly available</p>
-  <p style='margin-left:.5in;text-indent:-.25in;mso-list:l1 level1 lfo2;
-  tab-stops:list .5in'><![if !supportLists]><span style='font-family:Symbol'>�<span
-  style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-  </span></span><![endif]>All Projects operate using open source rules of
-  engagement: meritocracy, transparency, and open participation.<span
-  style="mso-spacerun: yes">&nbsp; </span>These principles work together.<span
-  style="mso-spacerun: yes">&nbsp; </span>Anyone can participate in a
-  Project.<span style="mso-spacerun: yes">&nbsp; </span>This open interaction,
+  obstacles, solving problems, and resolving conflicts.</li>
+  
+  <li>All Project plans, technical documents and reports
+  are publicly available</li>
+  
+  <li>All Projects operate using open source rules of
+  engagement: meritocracy, transparency, and open participation. 
+  These principles work together. 
+  Anyone can participate in a
+  Project.
+  This open interaction,
   from answering questions to reporting bugs to making code contributions to
   creating designs, enables everyone to recognize and utilize the
-  contributions.</p>
+  contributions.</li>
   <p>The PMC has the following responsibilities:</p>
-  <ul type=disc>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l0 level1 lfo5;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Providing the leadership and vision
+  <ul>
+   <li>Providing the leadership and vision
        to guide the Project's overall direction in a manner consistent with the
-       Eclipse Foundation Architectural Roadmap.<o:p></o:p></span></li>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l0 level1 lfo5;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Providing assistance and
+       Eclipse Foundation Architectural Roadmap.</li>
+   <li>Providing assistance and
        support to the developers and researchers working on the Project by
-       removing obstacles, solving problems, and resolving conflicts. <o:p></o:p></span></li>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l0 level1 lfo5;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Ensuring that Project plans
-       are produced.<o:p></o:p></span></li>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l0 level1 lfo5;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Working with the Eclipse
+       removing obstacles, solving problems, and resolving conflicts.</li>
+   <li>Ensuring that Project plans
+       are produced.</li>
+   <li>Working with the Eclipse
        Management Organization (the &#8220;EMO&#8221;) to establish the development
        processes and infrastructure needed for the development team to be
-       effective. <o:p></o:p></span></li>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l0 level1 lfo5;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Recommending new Projects to
-       the EMO.<o:p></o:p></span></li>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l0 level1 lfo5;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Recommending the initial set
+       effective.</li>
+   <li>Recommending new Projects to
+       the EMO.</li>
+   <li>Recommending the initial set
        of Project committers for each new Project overseen by the PMC, and
        establishing the procedures consistent with this Charter for voting in
-       new committers. <o:p></o:p></span></li>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l0 level1 lfo5;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Helping to ensure that the
+       new committers.</li>
+   <li>Helping to ensure that the
        Projects overseen by the PMC have enough contributors, and working to
-       fill vacancies in roles. <o:p></o:p></span></li>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l0 level1 lfo5;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Producing &#8220;how to get
-       involved&#8221; guidelines to help new potential contributors get started.<o:p></o:p></span></li>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l0 level1 lfo5;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Coordinating relationships
-       with other Eclipse Foundation Projects. <o:p></o:p></span></li>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l0 level1 lfo5;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Facilitating code or other donations
-       by individuals or companies. <o:p></o:p></span></li>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l0 level1 lfo5;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Making recommendations to the
+       fill vacancies in roles.</li>
+   <li>Producing &#8220;how to get
+       involved&#8221; guidelines to help new potential contributors get started.</li>
+   <li>Coordinating relationships
+       with other Eclipse Foundation Projects.</li>
+   <li>Facilitating code or other donations
+       by individuals or companies.</li>
+   <li>Making recommendations to the
        Eclipse Foundation Board regarding contributions proposed under licenses
-       other than the EPL.<o:p></o:p></span></li>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l0 level1 lfo5;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Working with the EMO and
+       other than the EPL.</li>
+   <li>Working with the EMO and
        Committers to ensure in-bound contributions are made in accordance with
-       the Eclipse Foundation IP Policy.<o:p></o:p></span></li>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l0 level1 lfo5;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Acting as a focal point for
-       the community in representing the Projects it oversees.<o:p></o:p></span></li>
+       the Eclipse Foundation IP Policy.</li>
+   <li>Acting as a focal point for
+       the community in representing the Projects it oversees.</li>
   </ul>
   <p>The PMC Lead is appointed by the Board. The initial PMC is selected by the
   PMC Lead. Thereafter, to become a member of the PMC, an individual must be
@@ -165,13 +134,13 @@
   members.</p>
   <p>In the unlikely event that a member of the PMC becomes disruptive to the
   process or ceases to contribute for an extended period, the member may be
-  removed by unanimous vote of remaining PMC members.<span style="mso-spacerun:
-  yes">&nbsp; </span>PMC members may resign at any time by delivering notice of
+  removed by unanimous vote of remaining PMC members. 
+  PMC members may resign at any time by delivering notice of
   their resignation to the PMC Lead.</p>
   <p>The PMC is responsible for producing and maintaining the Project Charter.
   Development must conform to any rules or processes outlined in the Charter,
   so a change to the development process may necessitate a change to the
-  Charter.<span style="mso-spacerun: yes">&nbsp; </span>Changes to the Charter
+  Charter. Changes to the Charter
   are approved by the Board.</p>
   <p>The work of the PMC is shared by the PMC members. All PMC members are
   expected to contribute actively. In particular, PMC members are expected to
@@ -255,8 +224,7 @@
   can be discontinued by decision of the Board.</p>
   <p>When a new Project is created, the PMC nominates a Project lead to act as
   the technical leader and nominates the initial set of Committers for the
-  Project, and these nominations are approved by the EMO.<span
-  style="mso-spacerun: yes">&nbsp; </span>Project leads are accountable to the
+  Project, and these nominations are approved by the EMO. Project leads are accountable to the
   PMC for the success of their Project.</p>
   <p><b>Project Components</b><br>
   The PMC may decide to divide a Project further into components. If a Project
@@ -283,38 +251,26 @@
   port. Normally the Component Lead will also be the Port Lead.</p>
   <p><b>Infrastructure</b><br>
   The PMC works with the EMO to ensure the required infrastructure for the
-  Project.<span style="mso-spacerun: yes">&nbsp; </span>The Project
+  Project. The Project
   infrastructure will include, at minimum:</p>
-  <ul type=disc>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l2 level1 lfo8;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Bug Database - Bugzilla
-       database for tracking bugs and feature requests. <o:p></o:p></span></li>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l2 level1 lfo8;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Source Repository -- One or
-       more CVS repositories containing both the master source code and
-       documentation for the Projects. <o:p></o:p></span></li>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l2 level1 lfo8;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Website - A website will
+  <ul>
+   <li>Bug Database - Bugzilla
+       database for tracking bugs and feature requests.</li>
+   <li>Source Repository -- One or
+       more SCM repositories containing both the master source code and
+       documentation for the Projects.</li>
+   <li>Website - A website will
        contain information about the Project, including documentation,
-       downloads of releases, and this Charter. <o:p></o:p></span></li>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l2 level1 lfo8;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>General Mailing List -
+       downloads of releases, and this Charter.</li>
+   <li>General Mailing List -
        Mailing list for development discussions pertaining to the Project as a
-       whole or that cross Projects. This mailing list is open to the public. <o:p></o:p></span></li>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l2 level1 lfo8;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Project Mailing Lists - Development
+       whole or that cross Projects. This mailing list is open to the public.</li>
+   <li>Project Mailing Lists - Development
        mailing list for technical discussions related to the Project. This
-       mailing list is open to the public. <o:p></o:p></span></li>
-   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
-       auto;mso-list:l2 level1 lfo8;tab-stops:list .5in'><span
-       style='font-size:10.0pt;font-family:Arial'>Component Mailing Lists --
+       mailing list is open to the public.</li>
+   <li>Component Mailing Lists -
        Development mailing list for technical discussions related to the
-       component. This mailing list is open to the public. <o:p></o:p></span></li>
+       component. This mailing list is open to the public.</li>
   </ul>
   <p><b>The Development Process</b><br>
   Each Project lead must produce a development plan for the release cycle, and
