reformat some documentation of classes so methods and attributes are under the class directive
diff --git a/Doc/library/calendar.rst b/Doc/library/calendar.rst
index 511edbc..6e8a03c 100644
--- a/Doc/library/calendar.rst
+++ b/Doc/library/calendar.rst
@@ -34,75 +34,76 @@
 
    .. versionadded:: 2.5
 
-:class:`Calendar` instances have the following methods:
+   :class:`Calendar` instances have the following methods:
 
 
-.. method:: Calendar.iterweekdays(weekday)
+   .. method:: iterweekdays(weekday)
 
-   Return an iterator for the week day numbers that will be used for one week.
-   The first value from the iterator will be the same as the value of the
-   :attr:`firstweekday` property.
+      Return an iterator for the week day numbers that will be used for one
+      week.  The first value from the iterator will be the same as the value of
+      the :attr:`firstweekday` property.
 
 
-.. method:: Calendar.itermonthdates(year, month)
+   .. method:: itermonthdates(year, month)
 
-   Return an iterator for the month *month* (1-12) in the year *year*. This
-   iterator will return all days (as :class:`datetime.date` objects) for the month
-   and all days before the start of the month or after the end of the month that
-   are required to get a complete week.
+      Return an iterator for the month *month* (1-12) in the year *year*. This
+      iterator will return all days (as :class:`datetime.date` objects) for the
+      month and all days before the start of the month or after the end of the
+      month that are required to get a complete week.
 
 
-.. method:: Calendar.itermonthdays2(year, month)
+   .. method:: itermonthdays2(year, month)
 
-   Return an iterator for the month *month* in the year *year* similar to
-   :meth:`itermonthdates`. Days returned will be tuples consisting of a day number
-   and a week day number.
+      Return an iterator for the month *month* in the year *year* similar to
+      :meth:`itermonthdates`. Days returned will be tuples consisting of a day
+      number and a week day number.
 
 
-.. method:: Calendar.itermonthdays(year, month)
+   .. method:: itermonthdays(year, month)
 
-   Return an iterator for the month *month* in the year *year* similar to
-   :meth:`itermonthdates`. Days returned will simply be day numbers.
+      Return an iterator for the month *month* in the year *year* similar to
+      :meth:`itermonthdates`. Days returned will simply be day numbers.
 
 
-.. method:: Calendar.monthdatescalendar(year, month)
+   .. method:: monthdatescalendar(year, month)
 
-   Return a list of the weeks in the month *month* of the *year* as full weeks.
-   Weeks are lists of seven :class:`datetime.date` objects.
+      Return a list of the weeks in the month *month* of the *year* as full
+      weeks.  Weeks are lists of seven :class:`datetime.date` objects.
 
 
-.. method:: Calendar.monthdays2calendar(year, month)
+   .. method:: monthdays2calendar(year, month)
 
-   Return a list of the weeks in the month *month* of the *year* as full weeks.
-   Weeks are lists of seven tuples of day numbers and weekday numbers.
+      Return a list of the weeks in the month *month* of the *year* as full
+      weeks.  Weeks are lists of seven tuples of day numbers and weekday
+      numbers.
 
 
-.. method:: Calendar.monthdayscalendar(year, month)
+   .. method:: monthdayscalendar(year, month)
 
-   Return a list of the weeks in the month *month* of the *year* as full weeks.
-   Weeks are lists of seven day numbers.
+      Return a list of the weeks in the month *month* of the *year* as full
+      weeks.  Weeks are lists of seven day numbers.
 
 
-.. method:: Calendar.yeardatescalendar(year[, width])
+   .. method:: yeardatescalendar(year[, width])
 
-   Return the data for the specified year ready for formatting. The return value
-   is a list of month rows. Each month row contains up to *width* months
-   (defaulting to 3). Each month contains between 4 and 6 weeks and each week
-   contains 1--7 days. Days are :class:`datetime.date` objects.
+      Return the data for the specified year ready for formatting. The return
+      value is a list of month rows. Each month row contains up to *width*
+      months (defaulting to 3). Each month contains between 4 and 6 weeks and
+      each week contains 1--7 days. Days are :class:`datetime.date` objects.
 
 
-.. method:: Calendar.yeardays2calendar(year[, width])
+   .. method:: yeardays2calendar(year[, width])
 
-   Return the data for the specified year ready for formatting (similar to
-   :meth:`yeardatescalendar`). Entries in the week lists are tuples of day
-   numbers and weekday numbers. Day numbers outside this month are zero.
+      Return the data for the specified year ready for formatting (similar to
+      :meth:`yeardatescalendar`). Entries in the week lists are tuples of day
+      numbers and weekday numbers. Day numbers outside this month are zero.
 
 
-.. method:: Calendar.yeardayscalendar(year[, width])
+   .. method:: yeardayscalendar(year[, width])
 
-   Return the data for the specified year ready for formatting (similar to
-   :meth:`yeardatescalendar`). Entries in the week lists are day numbers. Day
-   numbers outside this month are zero.
+      Return the data for the specified year ready for formatting (similar to
+      :meth:`yeardatescalendar`). Entries in the week lists are day numbers. Day
+      numbers outside this month are zero.
 
 
 .. class:: TextCalendar([firstweekday])
@@ -111,36 +112,36 @@
 
    .. versionadded:: 2.5
 
-:class:`TextCalendar` instances have the following methods:
+   :class:`TextCalendar` instances have the following methods:
 
 
-.. method:: TextCalendar.formatmonth(theyear, themonth[, w[, l]])
+   .. method:: formatmonth(theyear, themonth[, w[, l]])
 
-   Return a month's calendar in a multi-line string. If *w* is provided, it
-   specifies the width of the date columns, which are centered. If *l* is given,
-   it specifies the number of lines that each week will use. Depends on the
-   first weekday as specified in the constructor or set by the
-   :meth:`setfirstweekday` method.
+      Return a month's calendar in a multi-line string. If *w* is provided, it
+      specifies the width of the date columns, which are centered. If *l* is
+      given, it specifies the number of lines that each week will use. Depends
+      on the first weekday as specified in the constructor or set by the
+      :meth:`setfirstweekday` method.
 
 
-.. method:: TextCalendar.prmonth(theyear, themonth[, w[, l]])
+   .. method:: prmonth(theyear, themonth[, w[, l]])
 
-   Print a month's calendar as returned by :meth:`formatmonth`.
+      Print a month's calendar as returned by :meth:`formatmonth`.
 
 
-.. method:: TextCalendar.formatyear(theyear, themonth[, w[, l[, c[, m]]]])
+   .. method:: formatyear(theyear, themonth[, w[, l[, c[, m]]]])
 
-   Return a *m*-column calendar for an entire year as a multi-line string.
-   Optional parameters *w*, *l*, and *c* are for date column width, lines per
-   week, and number of spaces between month columns, respectively. Depends on
-   the first weekday as specified in the constructor or set by the
-   :meth:`setfirstweekday` method.  The earliest year for which a calendar can
-   be generated is platform-dependent.
+      Return a *m*-column calendar for an entire year as a multi-line string.
+      Optional parameters *w*, *l*, and *c* are for date column width, lines per
+      week, and number of spaces between month columns, respectively. Depends on
+      the first weekday as specified in the constructor or set by the
+      :meth:`setfirstweekday` method.  The earliest year for which a calendar
+      can be generated is platform-dependent.
 
 
-.. method:: TextCalendar.pryear(theyear[, w[, l[, c[, m]]]])
+   .. method:: pryear(theyear[, w[, l[, c[, m]]]])
 
-   Print the calendar for an entire year as returned by :meth:`formatyear`.
+      Print the calendar for an entire year as returned by :meth:`formatyear`.
 
 
 .. class:: HTMLCalendar([firstweekday])
@@ -149,36 +150,37 @@
 
    .. versionadded:: 2.5
 
-:class:`HTMLCalendar` instances have the following methods:
+   :class:`HTMLCalendar` instances have the following methods:
 
 
-.. method:: HTMLCalendar.formatmonth(theyear, themonth[, withyear])
+   .. method:: formatmonth(theyear, themonth[, withyear])
 
-   Return a month's calendar as an HTML table. If *withyear* is true the year will
-   be included in the header, otherwise just the month name will be used.
+      Return a month's calendar as an HTML table. If *withyear* is true the year
+      will be included in the header, otherwise just the month name will be
+      used.
 
 
-.. method:: HTMLCalendar.formatyear(theyear, themonth[, width])
+   .. method:: formatyear(theyear, themonth[, width])
 
-   Return a year's calendar as an HTML table. *width* (defaulting to 3) specifies
-   the number of months per row.
+      Return a year's calendar as an HTML table. *width* (defaulting to 3)
+      specifies the number of months per row.
 
 
-.. method:: HTMLCalendar.formatyearpage(theyear[, width[, css[, encoding]]])
+   .. method:: formatyearpage(theyear[, width[, css[, encoding]]])
 
-   Return a year's calendar as a complete HTML page. *width* (defaulting to 3)
-   specifies the number of months per row. *css* is the name for the cascading
-   style sheet to be used. :const:`None` can be passed if no style sheet should be
-   used. *encoding* specifies the encoding to be used for the output (defaulting to
-   the system default encoding).
+      Return a year's calendar as a complete HTML page. *width* (defaulting to
+      3) specifies the number of months per row. *css* is the name for the
+      cascading style sheet to be used. :const:`None` can be passed if no style
+      sheet should be used. *encoding* specifies the encoding to be used for the
+      output (defaulting to the system default encoding).
 
 
 .. class:: LocaleTextCalendar([firstweekday[, locale]])
 
    This subclass of :class:`TextCalendar` can be passed a locale name in the
-   constructor and will return month and weekday names in the specified locale. If
-   this locale includes an encoding all strings containing month and weekday names
-   will be returned as unicode.
+   constructor and will return month and weekday names in the specified
+   locale. If this locale includes an encoding all strings containing month and
+   weekday names will be returned as unicode.
 
    .. versionadded:: 2.5
 
@@ -186,9 +188,9 @@
 .. class:: LocaleHTMLCalendar([firstweekday[, locale]])
 
    This subclass of :class:`HTMLCalendar` can be passed a locale name in the
-   constructor and will return month and weekday names in the specified locale. If
-   this locale includes an encoding all strings containing month and weekday names
-   will be returned as unicode.
+   constructor and will return month and weekday names in the specified
+   locale. If this locale includes an encoding all strings containing month and
+   weekday names will be returned as unicode.
 
    .. versionadded:: 2.5