diff --git a/src/blockdata/block.rs b/src/blockdata/block.rs
index ce0c4e0c..3761e2b4 100644
--- a/src/blockdata/block.rs
+++ b/src/blockdata/block.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Bitcoin Block
+//! Bitcoin Block
//!
//! A block is a bundle of transactions with a proof-of-work attached,
//! which attaches to an earlier block to form the blockchain. This
diff --git a/src/blockdata/constants.rs b/src/blockdata/constants.rs
index bcf2558a..c4bd3c2f 100644
--- a/src/blockdata/constants.rs
+++ b/src/blockdata/constants.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Blockdata constants
+//! Blockdata constants
//!
//! This module provides various constants relating to the blockchain and
//! consensus code. In particular, it defines the genesis block and its
diff --git a/src/blockdata/mod.rs b/src/blockdata/mod.rs
index c5677503..78112b1a 100644
--- a/src/blockdata/mod.rs
+++ b/src/blockdata/mod.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Blockdata
+//! Blockdata
//!
//! This module defines structions and functions for storing the blocks and
//! transactions which make up the Bitcoin system.
diff --git a/src/blockdata/opcodes.rs b/src/blockdata/opcodes.rs
index 62285147..d46509cb 100644
--- a/src/blockdata/opcodes.rs
+++ b/src/blockdata/opcodes.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Opcodes
+//! Opcodes
//!
//! Bitcoin's script uses a stack-based assembly language. This module defines
//! all of the opcodes
diff --git a/src/blockdata/script.rs b/src/blockdata/script.rs
index b5dc44fb..068cee25 100644
--- a/src/blockdata/script.rs
+++ b/src/blockdata/script.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Script
+//! Script
//!
//! Scripts define Bitcoin's digital signature scheme: a signature is formed
//! from a script (the second half of which is defined by a coin to be spent,
diff --git a/src/blockdata/transaction.rs b/src/blockdata/transaction.rs
index 36a9547f..dd269185 100644
--- a/src/blockdata/transaction.rs
+++ b/src/blockdata/transaction.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Bitcoin Transaction
+//! Bitcoin Transaction
//!
//! A transaction describes a transfer of money. It consumes previously-unspent
//! transaction outputs and produces new ones, satisfying the condition to spend
diff --git a/src/macros.rs b/src/macros.rs
index ea6b09a6..598de508 100644
--- a/src/macros.rs
+++ b/src/macros.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Macros
+//! Macros
//!
//! Macros available to users of the Bitcoin library
diff --git a/src/network/address.rs b/src/network/address.rs
index c813e885..36335f9f 100644
--- a/src/network/address.rs
+++ b/src/network/address.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Bitcoin network addresses
+//! Bitcoin network addresses
//!
//! This module defines the structures and functions needed to encode
//! network addresses in Bitcoin messages.
diff --git a/src/network/consensus_params.rs b/src/network/consensus_params.rs
index f72b2b5d..759b4ea8 100644
--- a/src/network/consensus_params.rs
+++ b/src/network/consensus_params.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Consensus parameters
+//! Consensus parameters
//!
//! This module provides predefined set of parameters for different chains.
//!
diff --git a/src/network/encodable.rs b/src/network/encodable.rs
index 71fb201e..fc843bc6 100644
--- a/src/network/encodable.rs
+++ b/src/network/encodable.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Consensus-encodable types
+//! Consensus-encodable types
//!
//! This is basically a replacement of the `Encodable` trait which does
//! normalization for endianness, etc., to ensure that the encoding
diff --git a/src/network/listener.rs b/src/network/listener.rs
index 2b5d331c..0dc29cb4 100644
--- a/src/network/listener.rs
+++ b/src/network/listener.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Abstract Bitcoin listener
+//! Abstract Bitcoin listener
//!
//! This module defines a listener on the Bitcoin network which is able
//! to connect to a peer, send network messages, and receive Bitcoin data.
diff --git a/src/network/message.rs b/src/network/message.rs
index c092c2cd..02084e11 100644
--- a/src/network/message.rs
+++ b/src/network/message.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Network message
+//! Network message
//!
//! This module defines the `Message` traits which are used
//! for (de)serializing Bitcoin objects for transmission on the network. It
diff --git a/src/network/message_blockdata.rs b/src/network/message_blockdata.rs
index 63316e80..a4c2e794 100644
--- a/src/network/message_blockdata.rs
+++ b/src/network/message_blockdata.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Blockdata network messages
+//! Blockdata network messages
//!
//! This module describes network messages which are used for passing
//! Bitcoin data (blocks and transactions) around.
diff --git a/src/network/message_network.rs b/src/network/message_network.rs
index 3e3f30b2..1229d4a3 100644
--- a/src/network/message_network.rs
+++ b/src/network/message_network.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Network-related network messages
+//! Network-related network messages
//!
//! This module defines network messages which describe peers and their
//! capabilities
diff --git a/src/network/mod.rs b/src/network/mod.rs
index ad1d522e..99727454 100644
--- a/src/network/mod.rs
+++ b/src/network/mod.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Network Support
+//! Network Support
//!
//! This module defines support for (de)serialization and network transport
//! of Bitcoin data and network messages.
diff --git a/src/network/serialize.rs b/src/network/serialize.rs
index cb7c148d..e626405e 100644
--- a/src/network/serialize.rs
+++ b/src/network/serialize.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Network Serialization
+//! Network Serialization
//!
//! This module defines the `Serializable` trait which is used for
//! (de)serializing Bitcoin objects for transmission on the network.
diff --git a/src/network/socket.rs b/src/network/socket.rs
index 1bb45f7a..0b2239fe 100644
--- a/src/network/socket.rs
+++ b/src/network/socket.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Sockets
+//! Sockets
//!
//! This module provides support for low-level network communication.
//!
diff --git a/src/test_macros.rs b/src/test_macros.rs
index 996e7977..9a711ce3 100644
--- a/src/test_macros.rs
+++ b/src/test_macros.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Macros
+//! Macros
//!
//! Internal macros used for unit tests
diff --git a/src/util/address.rs b/src/util/address.rs
index 76800b5d..e7ec4cab 100644
--- a/src/util/address.rs
+++ b/src/util/address.rs
@@ -11,7 +11,8 @@
// If not, see .
//
-//! # Addresses
+//! Addresses
+//!
//! Support for ordinary base58 Bitcoin addresses and private keys
//!
diff --git a/src/util/base58.rs b/src/util/base58.rs
index 3d0a915e..976cd10f 100644
--- a/src/util/base58.rs
+++ b/src/util/base58.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Base58 encoder and decoder
+//! Base58 encoder and decoder
use std::{error, fmt};
diff --git a/src/util/bip143.rs b/src/util/bip143.rs
index 0abccc3e..03ae7f36 100644
--- a/src/util/bip143.rs
+++ b/src/util/bip143.rs
@@ -11,7 +11,7 @@
// If not, see .
//
-//! # BIP143 Implementation
+//! BIP143 Implementation
//!
//! Implementation of BIP143 Segwit-style signatures. Should be sufficient
//! to create signatures for Segwit transactions (which should be pushed into
diff --git a/src/util/bip32.rs b/src/util/bip32.rs
index 6408c04d..78c8e9f3 100644
--- a/src/util/bip32.rs
+++ b/src/util/bip32.rs
@@ -11,7 +11,7 @@
// If not, see .
//
-//! # BIP32 Implementation
+//! BIP32 Implementation
//!
//! Implementation of BIP32 hierarchical deterministic wallets, as defined
//! at https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki
diff --git a/src/util/contracthash.rs b/src/util/contracthash.rs
index a08a9f71..3a6a856c 100644
--- a/src/util/contracthash.rs
+++ b/src/util/contracthash.rs
@@ -12,7 +12,8 @@
// If not, see .
//
-//! # Pay-to-contract-hash supporte
+//! Pay-to-contract-hash supporte
+//!
//! See Appendix A of the Blockstream sidechains whitepaper
//! at http://blockstream.com/sidechains.pdf for details of
//! what this does.
diff --git a/src/util/decimal.rs b/src/util/decimal.rs
index 6436f783..7694050a 100644
--- a/src/util/decimal.rs
+++ b/src/util/decimal.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Floating-point decimal type
+//! Floating-point decimal type
//!
//! `i64`-based floating-point decimal type designed to hold Bitcoin
//! amounts. For satoshi amounts (8 decimal places) the maximum
diff --git a/src/util/hash.rs b/src/util/hash.rs
index ec73a859..134f98ef 100644
--- a/src/util/hash.rs
+++ b/src/util/hash.rs
@@ -11,7 +11,7 @@
// If not, see .
//
-//! # Hash functions
+//! Hash functions
//!
//! Utility functions related to hashing data, including merkleization
diff --git a/src/util/iter.rs b/src/util/iter.rs
index 7a4cbda8..e950d787 100644
--- a/src/util/iter.rs
+++ b/src/util/iter.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Iterator adaptors
+//! Iterator adaptors
//!
//! Iterator adaptors needed by Bitcoin but not provided by the Rust
//! standard library.
diff --git a/src/util/misc.rs b/src/util/misc.rs
index 5990404c..3ee7f610 100644
--- a/src/util/misc.rs
+++ b/src/util/misc.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Miscellaneous functions
+//! Miscellaneous functions
//!
//! Various utility functions
diff --git a/src/util/mod.rs b/src/util/mod.rs
index 58f7c79f..db44b930 100644
--- a/src/util/mod.rs
+++ b/src/util/mod.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Utility functions
+//! Utility functions
//!
//! Functions needed by all parts of the Bitcoin library
diff --git a/src/util/privkey.rs b/src/util/privkey.rs
index 52b47e46..b8447e7a 100644
--- a/src/util/privkey.rs
+++ b/src/util/privkey.rs
@@ -11,8 +11,9 @@
// If not, see .
//
-//! # private key
-//! A private key represents the secret data associated with its proposed use
+//! Private key
+//!
+//! A private key represents the secret data associated with its proposed use
//!
use std::str::FromStr;
use util::Error;
diff --git a/src/util/uint.rs b/src/util/uint.rs
index c6b5650c..eb026d4e 100644
--- a/src/util/uint.rs
+++ b/src/util/uint.rs
@@ -12,7 +12,7 @@
// If not, see .
//
-//! # Big unsigned integer types
+//! Big unsigned integer types
//!
//! Implementation of a various large-but-fixed sized unsigned integer types.
//! The functions here are designed to be fast.