diff --git a/_projectCommon.php b/_projectCommon.php
index 5f9f043..177866d 100644
--- a/_projectCommon.php
+++ b/_projectCommon.php
@@ -14,8 +14,8 @@
         $Nav->addCustomNav("Screenshots",       "/photran/screenshots.php", "_self", 2);
         $Nav->addCustomNav("Download",          "/photran/download.php", "_self", 2);
         $Nav->addCustomNav("Mailing Lists",     "/photran/mailinglists.php", "_self", 2);
-        $Nav->addCustomNav("Report a Bug",      "https://bugs.eclipse.org/bugs/enter_bug.cgi?assigned_to=photran-inbox%40eclipse.org&component=Photran.Unknown&product=PTP&version=8.0", "_self", 2);
-        $Nav->addCustomNav("Suggest a Feature", "https://bugs.eclipse.org/bugs/enter_bug.cgi?assigned_to=photran-inbox%40eclipse.org&component=Photran.Unknown&bug_severity=enhancement&product=PTP&version=8.0", "_self", 2);
+        $Nav->addCustomNav("Report a Bug",      "https://bugs.eclipse.org/bugs/enter_bug.cgi?assigned_to=photran-inbox%40eclipse.org&component=Photran.Unknown&product=PTP&version=9.1", "_self", 2);
+        $Nav->addCustomNav("Suggest a Feature", "https://bugs.eclipse.org/bugs/enter_bug.cgi?assigned_to=photran-inbox%40eclipse.org&component=Photran.Unknown&bug_severity=enhancement&product=PTP&version=9.1", "_self", 2);
         #$Nav->addCustomNav("Documentation",    "/photran/documentation.php", "_self", 2);
             #$Nav->addCustomNav("Refactoring",  "/photran/refactoring.php", "_self", 3);
             #$Nav->addCustomNav("Wiki",         "http://wiki.eclipse.org/index.php?title=Parallel_Tools_Platform#Photran_Information", "_self", 2);
diff --git a/contributors.php b/contributors.php
index 2364689..54a09a7 100644
--- a/contributors.php
+++ b/contributors.php
@@ -18,24 +18,20 @@
     <div class="homeitem3col">
       <h3>Leads</h3>
       <ul>
-        <li><a href="http://st-www.cs.uiuc.edu/users/johnson">Ralph Johnson</a>, UIUC - Principal investigator</li>
-        <li><a href="http://jeff.over.bz/">Jeff Overbey</a>, UIUC - Lead developer; parser, refactoring infrastructure, indexer/VPG, refactorings, UI features, error parsers, CDT integration</li>
+        <li><a href="http://st-www.cs.uiuc.edu/users/johnson">Ralph Johnson</a>, UIUC</li>
+        <li><a href="http://jeff.over.bz/">Jeff Overbey</a>, Auburn University - Lead developer; parser, refactoring infrastructure, indexer/VPG, refactorings, UI features, error parsers, CDT integration</li>
         <li><b>Greg Watson</b>, IBM - PTP project lead; release engineering</li>
       </ul>
     </div>
     
     <div class="homeitem3col">
-      <h3>Active Committers and Contributors</h3>
+      <h3>Past Contributors and Committers</h3>
       <ul>
         <li><b>Matt Fotzler</b>, UIUC - PTP integration, refactorings, C preprocessor support</li>
         <li><b>Bill Hilliard</b>, Intel - Committer; managed build support (Intel Fortran)</li>
         <li><b>Mariano M&eacute;ndez</b>, Universidad Nacional de la Plata - Refactorings, <a href="http://www.fortranrefactoring.com.ar/" target="_blank">fortranrefactoring.com.ar</a></li>
         <li><b>Stas Negara</b>, UIUC - Preliminary Fortran indexer, Move Save Variables to Common Block refactoring</li>
        </ul>
-    </div>
-    
-    <div class="homeitem3col">
-      <h3>Past Contributors and Committers</h3>
       <h4>2010</h4>
       <ul>
         <li><b>Zeeshan Ansari</b>, UIUC (CS427 Fa10) - Convert If Statement/Construct refactoring</li>
diff --git a/download-archive.php b/download-archive.php
index 7c80106..a8396a1 100755
--- a/download-archive.php
+++ b/download-archive.php
@@ -17,7 +17,45 @@
       and have bugs that are not present in the current release.  Please
       use the <a href="download.php">current release</a> for production work.
     </div>
-    
+
+    <div class="homeitem3col">
+      <h3>Photran 8.2</h3>
+
+      <p>Photran 8.2 was released as part of the Eclipse Luna release train, along with <a target="_blank" href="http://wiki.eclipse.org/PTP/release_notes/8.0">PTP 8.0</a>.
+      Eclipse 4.4 (Luna) was released on June 25, 2014.
+      A list of new features is available in the <a target="_blank" href="http://wiki.eclipse.org/PTP/new_and_noteworthy/8.0.0#Fortran_.28Photran.29">New &amp; Noteworthy</a>,
+      and comprehensive <a target="_blank" href="http://wiki.eclipse.org/PTP/photran/documentation">documentation</a>
+      is available.
+      
+      <p><b>Photran 8.2 requires Eclipse 4.4 (Kepler) and CDT 8.4.</b>
+
+      <ul>
+         <li>If you have not installed Photran before, or if you run into any problems during installation, please read the
+             <a href="http://wiki.eclipse.org/PTP/photran/documentation/photran8installation">installation instructions</a>.
+         <li>If you are familiar with the installation procedure, Photran can be installed from the Eclipse Luna update site:<br>
+             <b>http://download.eclipse.org/releases/luna</b>
+      </ul>
+    </div>
+
+    <div class="homeitem3col">
+      <h3>Photran 7.0</h3>
+
+      <p>Photran 7.0 was released as part of the Eclipse Indigo release train, along with <a target="_blank" href="http://wiki.eclipse.org/PTP/release_notes/5.0">PTP 5.0</a>.
+      Eclipse 3.6 (Indigo) was released on June 23, 2010.
+      A list of new features is available in the <a target="_blank" href="http://wiki.eclipse.org/PTP/new_and_noteworthy/5.0.0#Photran">New &amp; Noteworthy</a>,
+      and comprehensive <a target="_blank" href="http://wiki.eclipse.org/PTP/photran/documentation">documentation</a>
+      is available.
+      
+      <p><b>Photran 7 requires Eclipse 3.7 (Indigo) and CDT 8.0.</b>
+
+      <ul>
+         <li>If you have not installed Photran before, or if you run into any problems during installation, please read the
+             <a href="http://wiki.eclipse.org/PTP/photran/documentation/photran7installation">installation instructions</a>.
+         <li>If you are familiar with the installation procedure, Photran can be installed from the Eclipse Indigo update site:<br>
+             <b>http://download.eclipse.org/releases/indigo</b>
+      </ul>
+    </div>
+    		
     <div class="homeitem3col">
       <h3>Photran 6.0</h3>
 
diff --git a/download.php b/download.php
index 22f467c..2816ba1 100755
--- a/download.php
+++ b/download.php
@@ -12,49 +12,25 @@
     <h1>$pageTitle</h1>
 
     <div class="homeitem3col">
-      <h3>Photran 8.2</h3>
+      <h3>Photran 9.1</h3>
 
-      <p>Photran 8.2 is part of the Eclipse Luna release train, along with <a target="_blank" href="http://wiki.eclipse.org/PTP/release_notes/8.0">PTP 8.0</a>.
-      Eclipse 4.4 (Luna) was released on June 25, 2014.
-      A list of new features is available in the <a target="_blank" href="http://wiki.eclipse.org/PTP/new_and_noteworthy/8.0.0#Fortran_.28Photran.29">New &amp; Noteworthy</a>,
-      and comprehensive <a target="_blank" href="http://wiki.eclipse.org/PTP/photran/documentation">documentation</a>
-      is available.
-      
-      <p><b>Photran 8.2 requires Eclipse 4.4 (Kepler) and CDT 8.4.</b>
+      <p>Photran 9.1 is part of the Eclipse Mars release train, along with version 9.0 of the <a target="_blank" href="http://wiki.eclipse.org/PTP/">Parallel Tools Platform</a>.
+      Eclipse 4.5 (Mars) was released on June 24, 2015.
+      A list of new features is available in the <a target="_blank" href="https://wiki.eclipse.org/PTP/new_and_noteworthy/9.0.0#Fortran_.28Photran.29">New &amp; Noteworthy</a>.
+
+      <p><b>Photran 9.1 requires Eclipse 4.5 (Mars) and CDT 8.7.</b>
 
       <ul>
          <li>If you have not installed Photran before, or if you run into any problems during installation, please read the
              <a href="http://wiki.eclipse.org/PTP/photran/documentation/photran8installation">installation instructions</a>.
-         <li>If you are familiar with the installation procedure, Photran can be installed from the Eclipse Luna update site:<br>
-             <b>http://download.eclipse.org/releases/luna</b>
+         <li>If you are familiar with the installation procedure, Photran can be installed from the Eclipse Mars update site:<br>
+             <b>http://download.eclipse.org/releases/mars</b>
       </ul>
 
       <p>Please also join the <b><a href="https://dev.eclipse.org/mailman/listinfo/photran">Photran mailing list</a></b>;
       if you have any problems installing or using Photran, that is a great place to ask for help.
     </div>
 
-    <!--div class="homeitem3col">
-      <h3>Photran 7.0</h3>
-
-      <p>Photran 7.0 is part of the Eclipse Indigo release train, along with <a target="_blank" href="http://wiki.eclipse.org/PTP/release_notes/5.0">PTP 5.0</a>.
-      Eclipse 3.6 (Indigo) was released on June 23, 2010.
-      A list of new features is available in the <a target="_blank" href="http://wiki.eclipse.org/PTP/new_and_noteworthy/5.0.0#Photran">New &amp; Noteworthy</a>,
-      and comprehensive <a target="_blank" href="http://wiki.eclipse.org/PTP/photran/documentation">documentation</a>
-      is available.
-      
-      <p><b>Photran 7 requires Eclipse 3.7 (Indigo) and CDT 8.0.</b>
-
-      <ul>
-         <li>If you have not installed Photran before, or if you run into any problems during installation, please read the
-             <a href="http://wiki.eclipse.org/PTP/photran/documentation/photran7installation">installation instructions</a>.
-         <li>If you are familiar with the installation procedure, Photran can be installed from the Eclipse Indigo update site:<br>
-             <b>http://download.eclipse.org/releases/indigo</b>
-      </ul>
-
-      <p>Please also join the <b><a href="https://dev.eclipse.org/mailman/listinfo/photran">Photran mailing list</a></b>;
-      if you have any problems installing or using Photran, that is a great place to ask for help.
-    </div-->
-
     <p>&nbsp;
     <p><small>Old versions are available in the <a href="download-archive.php">Photran Download Archive</a>.</small></p>
  </div>
diff --git a/index.php b/index.php
index afc0036..6825a8f 100644
--- a/index.php
+++ b/index.php
@@ -17,10 +17,10 @@
 Photran is an IDE and refactoring tool for Fortran based on <a href="http://www.eclipse.org/"
  target="_blank">Eclipse</a> and
 the <a href="http://www.eclipse.org/cdt/" target="_blank">CDT</a>.
-<a href="download.php">Photran 8.2</a> was released with Eclipse 4.4 (Luna) on June 25, 2014.
+<a href="download.php">Photran 9.1</a> was released with Eclipse 4.5 (Mars) on June 24, 2015.
 
 <p>
-      Photran 8.2 supports Fortran 77-2008.  It includes 39 refactorings
+      Photran supports Fortran 77-2008.  It includes 39 refactorings
       (including Rename, Extract Procedure, and loop transformations), as
       well as the following IDE features:<br>
             <ul>
@@ -30,7 +30,6 @@
               <li>Open declaration*</li>
               <li>Declaration view and hover tips*</li>
               <li>Fortran language-based searching*</li>
-              <li>Support for CVS &amp; other VCS's**</li>
               <li>Interactive debugger (<span style="font-style: italic;">gdb</span> GUI)</li>
               <li>Makefile-based compilation</li>
               <li>Optional Makefile generation</li>
@@ -41,10 +40,6 @@
             enabled for these features to work.  See the Photran documentation for
             more information.</i></small></small></p>
             
-            <p><small><small><i>** CVS is supported in most Eclipse installations.
-            Subversion, Git, and other version control systems are supported via
-            third-party Eclipse plug-ins.</i></small></small></p>
-            
             <p>Photran is a component of the
             <a target="_blank" href="http://www.eclipse.org/ptp">Eclipse Parallel Tools Platform (PTP)</a>.
   </div>
