* Use explicit constraint names.

* Speed up initial load by disabling unneeded constraints temporarily.

* Profile adopt_orphans and offer_block_to_chain.

* Separate HTML from data access.

* Create "short links" as on http://blockexplorer.com.

* /q/nethash

* Start a test suite, especially for out-of-order blocks and reorgs.

* Test on MySQL.

* Speed up browsing by denormalizing data, perhaps using materialized
  views where available.

* Perhaps test on Oracle.

* Use SEQUENCEs where available for synthetic identifiers.

* Slight variation in CoinDD et al. among sites indicates a bug.

* Clean up and document limits on search result size.

* Add a tool to upload transactions if bitcoind supports it.

* Perhaps write a validation module to check db data.

* Abstract SQL into the DataStore class.

* Highlight any objects that are not in the main chain as such.

* Store and report block size, address type, raw objects, etc.

* Compute Merkle trees and verify transaction Merkle roots.

* Report the Merkle branch of a particular transaction to support SPV.

* Test as multithreaded or forking server.

* Perhaps support searching by hash/address substring.

* Tools/API like http://blockexplorer.com/q.

* Perhaps create a BlockExplorer.com compatibility mode.

* Perhaps create an "SQL script" DataStore subclass that outputs flat
  SQL INSERTs.

* Perhaps provide a postgresql-bytea binary type.

* Perhaps compress scriptPubKey by representing as a pubkey_id and
  address type.

* Context-sensitive help as on http://blockexplorer.com.

* Simplify the process of adding new chains.

* Defend against corrupt or differently formatted block files, though
  yet unseen.

* Present Namecoin name operations.

* Import transactions from the pool.

* Perhaps add coin tracking features: allow the administrator to
  specify "interesting" (e.g., suspected fraudulent) transactions and
  addresses, then add a hyperlink from objects linked to them.

* Perhaps track and report coin difficulty as proposed by casascius:
  http://forum.bitcoin.org/index.php?topic=10755.0

* Perhaps track and report collectible transaction bytes: size of
  transactions whose outputs are all spent, minus Merkle shrubbery
  needed to verify the rest.
