diff --git a/Doc/README.txt b/Doc/README.txt
index d09561a..d32d1ed 100644
--- a/Doc/README.txt
+++ b/Doc/README.txt
@@ -14,12 +14,11 @@
 Building the docs
 =================
 
-You need to install Python 2.4 or higher; the toolset used to build the docs are
-written in Python.  The toolset used to build the documentation is called
-*Sphinx*, it is not included in this tree, but maintained separately in the
-Python Subversion repository.  Also needed are Jinja, a templating engine
-(included in Sphinx as a Subversion external), and optionally Pygments, a code
-highlighter.
+You need to have Python 2.4 or higher installed; the toolset used to build the
+docs is written in Python.  It is called *Sphinx*, it is not included in this
+tree, but maintained separately.  Also needed are the docutils, supplying the
+base markup that Sphinx uses, Jinja, a templating engine, and optionally
+Pygments, a code highlighter.
 
 
 Using make
@@ -42,29 +41,29 @@
    convert them into a single Compiled HTML (.chm) file -- these are popular
    under Microsoft Windows, but very handy on every platform.
 
-   To create the CHM file, you need to run the Microsoft HTML Help Workshop
-   over the generated project (.hhp) file.
+   To create the CHM file, you need to run the Microsoft HTML Help Workshop over
+   the generated project (.hhp) file.
 
- * "latex", which builds LaTeX source files that can be run with "pdflatex"
-   to produce PDF documents.
+ * "latex", which builds LaTeX source files as input to "pdflatex" to produce
+   PDF documents.
 
  * "text", which builds a plain text file for each source file.
 
  * "linkcheck", which checks all external references to see whether they are
-   broken, redirected or malformed, and outputs this information to stdout
-   as well as a plain-text (.txt) file.
+   broken, redirected or malformed, and outputs this information to stdout as
+   well as a plain-text (.txt) file.
 
  * "changes", which builds an overview over all versionadded/versionchanged/
    deprecated items in the current version. This is meant as a help for the
    writer of the "What's New" document.
 
- * "coverage", which builds a coverage overview for standard library modules
-   and C API.
+ * "coverage", which builds a coverage overview for standard library modules and
+   C API.
 
- * "pydoc-topics", which builds a Python module containing a dictionary
-   with plain text documentation for the labels defined in
-   `tools/sphinxext/pyspecific.py` -- pydoc needs these to show topic
-   and keyword help.
+ * "pydoc-topics", which builds a Python module containing a dictionary with
+   plain text documentation for the labels defined in
+   `tools/sphinxext/pyspecific.py` -- pydoc needs these to show topic and
+   keyword help.
 
 A "make update" updates the Subversion checkouts in `tools/`.
 
@@ -90,7 +89,7 @@
 
 or by installing it from PyPI.
 
-You can optionally also install Pygments, either as a checkout via :: 
+You can optionally also install Pygments, either as a checkout via ::
 
    svn co http://svn.python.org/projects/external/Pygments-1.3.1/pygments tools/pygments
 
diff --git a/Doc/documenting/building.rst b/Doc/documenting/building.rst
new file mode 100644
index 0000000..9ab2519
--- /dev/null
+++ b/Doc/documenting/building.rst
@@ -0,0 +1,91 @@
+Building the documentation
+==========================
+
+You need to have Python 2.4 or higher installed; the toolset used to build the
+docs is written in Python.  It is called *Sphinx*, it is not included in this
+tree, but maintained separately.  Also needed are the docutils, supplying the
+base markup that Sphinx uses, Jinja, a templating engine, and optionally
+Pygments, a code highlighter.
+
+
+Using make
+----------
+
+Luckily, a Makefile has been prepared so that on Unix, provided you have
+installed Python and Subversion, you can just run ::
+
+   make html
+
+to check out the necessary toolset in the `tools/` subdirectory and build the
+HTML output files.  To view the generated HTML, point your favorite browser at
+the top-level index `build/html/index.html` after running "make".
+
+Available make targets are:
+
+ * "html", which builds standalone HTML files for offline viewing.
+
+ * "htmlhelp", which builds HTML files and a HTML Help project file usable to
+   convert them into a single Compiled HTML (.chm) file -- these are popular
+   under Microsoft Windows, but very handy on every platform.
+
+   To create the CHM file, you need to run the Microsoft HTML Help Workshop
+   over the generated project (.hhp) file.
+
+ * "latex", which builds LaTeX source files as input to "pdflatex" to produce
+   PDF documents.
+
+ * "text", which builds a plain text file for each source file.
+
+ * "linkcheck", which checks all external references to see whether they are
+   broken, redirected or malformed, and outputs this information to stdout
+   as well as a plain-text (.txt) file.
+
+ * "changes", which builds an overview over all versionadded/versionchanged/
+   deprecated items in the current version. This is meant as a help for the
+   writer of the "What's New" document.
+
+ * "coverage", which builds a coverage overview for standard library modules
+   and C API.
+
+ * "pydoc-topics", which builds a Python module containing a dictionary with
+   plain text documentation for the labels defined in
+   `tools/sphinxext/pyspecific.py` -- pydoc needs these to show topic and
+   keyword help.
+
+A "make update" updates the Subversion checkouts in `tools/`.
+
+
+Without make
+------------
+
+You'll need to install the Sphinx package, either by checking it out via ::
+
+   svn co http://svn.python.org/projects/external/Sphinx-0.6.5/sphinx tools/sphinx
+
+or by installing it from PyPI.
+
+Then, you need to install Docutils, either by checking it out via ::
+
+   svn co http://svn.python.org/projects/external/docutils-0.6/docutils tools/docutils
+
+or by installing it from http://docutils.sf.net/.
+
+You also need Jinja2, either by checking it out via ::
+
+   svn co http://svn.python.org/projects/external/Jinja-2.3.1/jinja2 tools/jinja2
+
+or by installing it from PyPI.
+
+You can optionally also install Pygments, either as a checkout via ::
+
+   svn co http://svn.python.org/projects/external/Pygments-1.3.1/pygments tools/pygments
+
+or from PyPI at http://pypi.python.org/pypi/Pygments.
+
+
+Then, make an output directory, e.g. under `build/`, and run ::
+
+   python tools/sphinx-build.py -b<builder> . build/<outputdirectory>
+
+where `<builder>` is one of html, text, latex, or htmlhelp (for explanations see
+the make targets above).
diff --git a/Doc/documenting/index.rst b/Doc/documenting/index.rst
index 88d97be..2c186a7 100644
--- a/Doc/documenting/index.rst
+++ b/Doc/documenting/index.rst
@@ -10,9 +10,9 @@
 `reStructuredText`_, developed by the `docutils`_ project, amended by custom
 directives and using a toolset named `Sphinx`_ to postprocess the HTML output.
 
-This document describes the style guide for our documentation, the custom
-reStructuredText markup introduced to support Python documentation and how it
-should be used, as well as the Sphinx build system.
+This document describes the style guide for our documentation as well as the
+custom reStructuredText markup introduced by Sphinx to support Python
+documentation and how it should be used.
 
 .. _reStructuredText: http://docutils.sf.net/rst.html
 .. _docutils: http://docutils.sf.net/
@@ -35,3 +35,4 @@
    rest.rst
    markup.rst
    fromlatex.rst
+   building.rst
diff --git a/Doc/library/socket.rst b/Doc/library/socket.rst
index b2784b6..7fe07be 100644
--- a/Doc/library/socket.rst
+++ b/Doc/library/socket.rst
@@ -72,18 +72,18 @@
    tuple, and the fields depend on the address type. The general tuple form is
    ``(addr_type, v1, v2, v3 [, scope])``, where:
 
-     - *addr_type* is one of TIPC_ADDR_NAMESEQ, TIPC_ADDR_NAME, or
-       TIPC_ADDR_ID.
-     - *scope* is one of TIPC_ZONE_SCOPE, TIPC_CLUSTER_SCOPE, and
-       TIPC_NODE_SCOPE.
-     - If *addr_type* is TIPC_ADDR_NAME, then *v1* is the server type, *v2* is
-       the port identifier, and *v3* should be 0.
+   - *addr_type* is one of TIPC_ADDR_NAMESEQ, TIPC_ADDR_NAME, or
+     TIPC_ADDR_ID.
+   - *scope* is one of TIPC_ZONE_SCOPE, TIPC_CLUSTER_SCOPE, and
+     TIPC_NODE_SCOPE.
+   - If *addr_type* is TIPC_ADDR_NAME, then *v1* is the server type, *v2* is
+     the port identifier, and *v3* should be 0.
 
-       If *addr_type* is TIPC_ADDR_NAMESEQ, then *v1* is the server type, *v2*
-       is the lower port number, and *v3* is the upper port number.
+     If *addr_type* is TIPC_ADDR_NAMESEQ, then *v1* is the server type, *v2*
+     is the lower port number, and *v3* is the upper port number.
 
-       If *addr_type* is TIPC_ADDR_ID, then *v1* is the node, *v2* is the
-       reference, and *v3* should be set to 0.
+     If *addr_type* is TIPC_ADDR_ID, then *v1* is the node, *v2* is the
+     reference, and *v3* should be set to 0.
 
 
 All errors raise exceptions.  The normal exceptions for invalid argument types
