Index: prologue/why.xml
===================================================================
--- prologue/why.xml	(revision b64efa28d0e8c6a99512675d571bf6e4ac78ee65)
+++ prologue/why.xml	(revision 62a598f586a58d176865f71f79a838b0d884b3ea)
@@ -11,11 +11,11 @@
   <title>Rationale for Packages in the Book</title>
 
-    <para>As stated earlier, the goal of LFS is to build a complete and usable
-    foundation-level system.  This includes all packages needed to replicate
-    itself while providing a relatively minimal base from which to customize
-    a more complete system based on the choices of the user.  This does not
+    <para>The goal of LFS is to build a complete and usable
+    foundation-level system&mdash;including all the packages needed to replicate
+    itself&mdash;and providing a relatively minimal base from which to customize
+    a more complete system based on the user's choices.  This does not
     mean that LFS is the smallest system possible.  Several important packages
-    are included that are not strictly required.  The lists below document the
-    rationale for each package in the book.</para>
+    are included that are not, strictly speaking, required.  The list below documents the
+    reasons each package in the book has been included.</para>
 
     <itemizedlist>
@@ -25,5 +25,5 @@
 
         <para>This package contains utilities to administer Access
-        Control Lists, which are used to define more fine-grained
+        Control Lists, which are used to define fine-grained
         discretionary access rights for files and directories.
         </para>
@@ -33,6 +33,6 @@
         <para>Attr</para>
 
-        <para>This package contains programs for administering
-        extended attributes on filesystem objects.
+        <para>This package contains programs for managing
+        extended attributes on file system objects.
         </para>
       </listitem>
@@ -41,8 +41,8 @@
         <para>Autoconf</para>
 
-        <para>This package contains programs for producing shell scripts that
+        <para>This package supplies programs for producing shell scripts that
         can automatically configure source code from a developer's
-        template. It is often needed to rebuild a package after updates
-        to the build procedures.</para>
+        template. It is often needed to rebuild a package after
+        the build procedure has been updated.</para>
       </listitem>
 
@@ -51,6 +51,6 @@
 
         <para>This package contains programs for generating Make files from
-        a template. It is often needed to rebuild a package after updates
-        to the build procedures.</para>
+        a template. It is often needed to rebuild a package after
+        the build procedure has been updated.</para>
       </listitem>
 
@@ -61,5 +61,5 @@
         a Bourne Shell interface to the system.  It was chosen over
         other shell packages because of its common usage and extensive
-        capabilities beyond basic shell functions.</para>
+        capabilities.</para>
       </listitem>
 
@@ -68,5 +68,5 @@
 
         <para>This package provides an arbitrary precision numeric processing language.
-        It satisfies a requirement needed when building the Linux kernel.</para>
+        It satisfies a requirement for building the Linux kernel.</para>
       </listitem>
 
@@ -74,7 +74,7 @@
         <para>Binutils</para>
 
-        <para>This package contains a linker, an assembler, and other
+        <para>This package supplies a linker, an assembler, and other
         tools for handling object files. The programs in this package are
-        needed to compile most of the packages in an LFS system and beyond.</para>
+        needed to compile most of the packages in an LFS system.</para>
       </listitem>
 
@@ -83,5 +83,5 @@
 
         <para>This package contains the GNU version of yacc (Yet Another
-        Compiler Compiler) needed to build several other LFS programs.</para>
+        Compiler Compiler) needed to build several of the LFS programs.</para>
       </listitem>
 
@@ -96,5 +96,5 @@
         <para>Check</para>
 
-        <para>This package contains a test harness for other programs.</para>
+        <para>This package provides a test harness for other programs.</para>
       </listitem>
 
@@ -112,5 +112,5 @@
 
         <para>This package contains programs to implement a message bus system,
-        which a simple way for applications to talk to one another.
+        a simple way for applications to talk to one another.
         </para>
       </listitem>
@@ -119,5 +119,5 @@
         <para>DejaGNU</para>
 
-        <para>This package contains a framework for testing other programs.</para>
+        <para>This package supplies a framework for testing other programs.</para>
       </listitem>
 
@@ -133,5 +133,5 @@
         <para>E2fsprogs</para>
 
-        <para>This package contains the utilities for handling the ext2, ext3
+        <para>This package supplies utilities for handling the ext2, ext3
         and ext4 file systems.  These are the most common and thoroughly
         tested file systems that Linux supports.</para>
@@ -142,6 +142,6 @@
 
         <para>This package is a device manager.  It dynamically controls the ownership,
-        permissions, names, and symbolic links of devices in the /dev directory as
-        devices are added or removed from the system.
+        permissions, names, and symbolic links of devices in the /dev directory when
+        devices are added to or removed from the system.
         </para>
       </listitem>
@@ -150,5 +150,5 @@
         <para>Expat</para>
 
-        <para>This package contains a relatively small XML parsing library.  It
+        <para>This package yields a relatively small XML parsing library.  It
         is required by the XML::Parser Perl module.</para>
       </listitem>
@@ -172,5 +172,5 @@
         <para>Findutils</para>
 
-        <para>This package contains programs to find files in a file system.
+        <para>This package provides programs to find files in a file system.
         It is used in many packages' build scripts.</para>
       </listitem>
@@ -188,5 +188,5 @@
         <para>Gawk</para>
 
-        <para>This package contains programs for manipulating text files.
+        <para>This package supplies programs for manipulating text files.
         It is the GNU version of awk (Aho-Weinberg-Kernighan). It is used in
         many other packages' build scripts.</para>
@@ -196,5 +196,5 @@
         <para>GCC</para>
 
-        <para>This package is the Gnu Compiler Collection.  It contains the
+        <para>This is the Gnu Compiler Collection.  It contains the
         C and C++ compilers as well as several others not built by LFS.
         </para>
@@ -211,6 +211,6 @@
         <para>Gettext</para>
 
-        <para>This package contains utilities and libraries for
-        internationalization and localization of numerous packages.</para>
+        <para>This package provides utilities and libraries for
+        the internationalization and localization of many packages.</para>
       </listitem>
 
@@ -225,6 +225,6 @@
         <para>GMP</para>
 
-        <para>This package contains math libraries that provide useful functions
-        for arbitrary precision arithmetic.  It is required to build GCC.</para>
+        <para>This package supplies math libraries that provide useful functions
+        for arbitrary precision arithmetic.  It is needed to build GCC.</para>
       </listitem>
 
@@ -232,6 +232,6 @@
         <para>Gperf</para>
 
-        <para>This package contains a program that generates a perfect hash
-        function from a key set. It is required for Eudev.</para>
+        <para>This package produces a program that generates a perfect hash
+        function from a set of keys. It is required by Eudev.</para>
       </listitem>
 
@@ -246,5 +246,5 @@
         <para>Groff</para>
 
-        <para>This package contains programs for processing and formatting text.
+        <para>This package contributes programs for processing and formatting text.
         One important function of these programs is to format man pages.</para>
       </listitem>
@@ -253,6 +253,6 @@
         <para>GRUB</para>
 
-        <para>This package is the Grand Unified Boot Loader.  It is one
-        of several boot loaders available, but is the most flexible.
+        <para>This is the Grand Unified Boot Loader.  It is 
+        the most flexible of several boot loaders available.
         </para>
       </listitem>
@@ -262,6 +262,6 @@
 
         <para>This package contains programs for compressing and
-        decompressing files. It is needed to decompress many packages in LFS
-        and beyond.</para>
+        decompressing files. It is needed to decompress many packages
+        in LFS.</para>
       </listitem>
 
@@ -276,5 +276,5 @@
         <para>Inetutils</para>
 
-        <para>This package contains programs for basic network
+        <para>This package supplies programs for basic network
         administration.</para>
       </listitem>
@@ -283,5 +283,5 @@
         <para>Intltool</para>
 
-        <para>This package contains tools for extracting translatable
+        <para>This package contributes tools for extracting translatable
         strings from source files.</para>
       </listitem>
@@ -305,5 +305,5 @@
         <para>Kbd</para>
 
-        <para>This package contains key-table files, keyboard utilities
+        <para>This package produces key-table files, keyboard utilities
         for non-US keyboards, and a number of console fonts.</para>
       </listitem>
@@ -312,5 +312,5 @@
         <para>Kmod</para>
 
-        <para>This package contains programs needed to administer Linux
+        <para>This package supplies programs needed to administer Linux
         kernel modules.</para>
       </listitem>
@@ -320,6 +320,6 @@
 
         <para>This package contains a very nice text file viewer that
-        allows scrolling up or down when viewing a file. It is also used by
-        Man-DB for viewing manpages.</para>
+        allows scrolling up or down when viewing a file. It is also used 
+        when viewing manpages.</para>
       </listitem>
 
@@ -358,5 +358,5 @@
         <para>Libpipeline</para>
 
-        <para>The Libpipeline package contains a library for manipulating
+        <para>The Libpipeline package supplies a library for manipulating
         pipelines of subprocesses in a flexible and convenient way. It is
         required by the Man-DB package.</para>
@@ -367,5 +367,5 @@
 
         <para>This package contains the GNU generic library support
-        script. It wraps the complexity of using shared libraries in a
+        script. It wraps the complexity of using shared libraries into a
         consistent, portable interface.  It is needed by the test
         suites in other LFS packages.</para>
@@ -382,5 +382,5 @@
         <para>M4</para>
 
-        <para>This package contains a general text macro processor useful
+        <para>This package provides a general text macro processor useful
         as a build tool for other programs.</para>
       </listitem>
@@ -405,5 +405,5 @@
         <para>This package contains programs for finding and viewing man pages.
         It was chosen instead of the <application>man</application> package
-        due to superior internationalization capabilities.  It supplies
+        because of its superior internationalization capabilities.  It supplies
         the man program.</para>
       </listitem>
@@ -412,5 +412,5 @@
         <para>Man-pages</para>
 
-        <para>This package contains the actual contents of the basic
+        <para>This package provides the actual contents of the basic
         Linux man pages.</para>
       </listitem>
@@ -420,6 +420,6 @@
 
         <para>This package provides a software tool for automating the building
-        of software. The main goal for Meson is to minimize the amount of time
-        that software developers need to spend configuring their build
+        of software. The main goal of Meson is to minimize the amount of time
+        that software developers need to spend configuring a build
         system.  It's required to build Systemd, as well as many BLFS
         packages.</para>
@@ -430,5 +430,5 @@
         <para>MPC</para>
 
-        <para>This package contains functions for the arithmetic of complex
+        <para>This package supplies arithmetic functions for complex
         numbers. It is required by GCC.</para>
       </listitem>
@@ -444,5 +444,5 @@
         <para>Ninja</para>
 
-        <para>This package contains a small build system with a focus on speed.
+        <para>This package furnishes a small build system with a focus on speed.
         It is designed to have its input files generated by a higher-level build
         system, and to run builds as fast as possible.
@@ -457,5 +457,5 @@
         handling of character screens.  It is often used to provide
         cursor control for a menuing system. It is needed by a number of
-        packages in LFS.</para>
+        the packages in LFS.</para>
       </listitem>
 
@@ -464,5 +464,5 @@
 
         <para>This package provides management tools and libraries relating to
-        cryptography. These are useful for providing cryptographic functions to
+        cryptography. These supply cryptographic functions to
         other packages, including the Linux kernel.</para>
       </listitem>
@@ -503,5 +503,5 @@
         <para>Psmisc</para>
 
-        <para>This package contains programs for displaying information
+        <para>This package produces programs for displaying information
         about running processes. These programs are useful for system
         administration.</para>
@@ -512,5 +512,5 @@
 
         <para>This package provides an interpreted language that has a design
-        philosophy that emphasizes code readability.</para>
+        philosophy emphasizing code readability.</para>
 
       </listitem>
@@ -519,5 +519,5 @@
         <para>Readline</para>
 
-        <para>This package is a set of libraries that offers command-line
+        <para>This package is a set of libraries that offer command-line
         editing and history capabilities.  It is used by Bash.</para>
       </listitem>
@@ -527,5 +527,5 @@
 
         <para>This package allows editing of text without opening it in a
-        text editor. It is also needed by most LFS packages' configure
+        text editor. It is also needed by many LFS packages' configure
         scripts.</para>
       </listitem>
@@ -535,5 +535,5 @@
 
         <para>This package contains programs for handling passwords
-        in a secure way.</para>
+        securely.</para>
       </listitem>
 
@@ -541,6 +541,6 @@
         <para>Sysklogd</para>
 
-        <para>This package contains programs for logging system messages,
-        such as those given by the kernel or daemon processes when unusual
+        <para>This package supplies programs for logging system messages,
+        such as those emitted by the kernel or daemon processes when unusual
         events occur.</para>
       </listitem>
@@ -551,5 +551,5 @@
         <para>This package provides an <application>init</application> program
         and several additional boot and system control capabilities as an
-        alternative to Sysvinit.  It is used by many commercial distributions.
+        alternative to Sysvinit.  It is used by many Linux distributions.
         </para>
       </listitem>
@@ -559,5 +559,5 @@
 
         <para>This package provides the <application>init</application>
-        program, which is the parent of all other processes on the Linux
+        program, the parent of all the other processes on a running Linux
         system. </para>
       </listitem>
@@ -567,5 +567,5 @@
 
         <para>This package provides archiving and extraction capabilities
-        of virtually all packages used in LFS.</para>
+        of virtually all the packages used in LFS.</para>
       </listitem>
 
@@ -574,5 +574,5 @@
 
         <para>This package contains the Tool Command Language used
-        in many test suites in LFS packages.</para>
+        in many test suites.</para>
       </listitem>
 
@@ -580,5 +580,5 @@
         <para>Texinfo</para>
 
-        <para>This package contains programs for reading, writing, and
+        <para>This package supplies programs for reading, writing, and
         converting info pages.  It is used in the installation
         procedures of many LFS packages.</para>
@@ -594,18 +594,18 @@
 
       <listitem>
-        <para>Wheel</para>
-
-        <para>This package contains a Python module that is the
-        reference implementation of the Python wheel packaging standard.
-        </para>
-      </listitem>
-
-      <listitem>
         <para>Vim</para>
 
-        <para>This package contains an editor. It was chosen because of its
+        <para>This package provides an editor. It was chosen because of its
         compatibility with the classic vi editor and its huge number of powerful
         capabilities.  An editor is a very personal choice for
-        many users and any other editor could be substituted if desired.</para>
+        many users. Any other editor can be substituted, if you wish.</para>
+      </listitem>
+      
+      <listitem>
+        <para>Wheel</para>
+
+        <para>This package supplies a Python module that is the
+        reference implementation of the Python wheel packaging standard.
+        </para>
       </listitem>
 
@@ -634,5 +634,5 @@
         <para>Zstd</para>
 
-        <para>This package contains compression and decompression routines
+        <para>This package supplies compression and decompression routines
         used by some programs. It provides high compression ratios and a very
         wide range of compression / speed trade-offs.</para>
