* interface
  * commit multiple files at once.
  * keyword expansion.

  * history.

  * diff.

* remote mode
  * talk CVS client/server protocol directly to avoid using CVS command.
    (it is required to specify `description' when adding a file.)

* local mode
  * cache whole RCS file in memory.

* cache mode (needless?)
  * implement.
  * checking RCS file regeneration identity.
  * think better name.

* application
  * ViewCVS (or cvsweb) like cgi script - ReViz - work in progress. (needs better name.)
  * repository downloader - reimplement CVSsuck.
  * various tree visualizer - VizTree (formaly CVStree)
  * local modification uploader.
  * branch and trunk exchanger.
  * SandWeb (or cvswebclient) like cgi script.
  * wikiwiki like application with revision control.
  * tool for archiving (remote) web diaries periodically.
  * CVS clone.
