charsets:
- set up some fuzzer
- use appropriate charsets in forms, urls, etc.
display:
- important: buffer list menu
- dark mode (basically max Y)
config:
- important: config editor
- better siteconf URL matching
- $TERM-based display config
- add RPC for CGI scripts e.g. toggle settings/issue downloads/etc
	* also some way to set permissions for RPC calls
mailcap:
- save custom command? (or a mailcap command editor like w3m)
- w3mmee extensions
	* browsecap looks cleaner than urimethodmap, and would be
	  useful for mailto
buffer:
- important: validate returned values, do not block on communication
  with buffer
	* turning buffers into a pseudo-protocol and interfacing through
	  loader may help
- color visited links
	* needs some sort of conditional formatting in pager, e.g. give
	  all Formats an id in buffer and send a list of "if URL
	  visited, change Format" commands
- xhtml
pager:
- handle long lines
- save/edit buffer output
	* just reuse dump mode code
- alert on external command failure
network:
- BGI
- uBO integration? (or at least implement filter lists)
- dict
- nntp
- websockets
javascript:
- support defining function with magic
- "this" value as JSValue
- ReadableStream
- separate console for each buffer
- CORS
layout:
- flexbox: align-self, align-items, justify-content, proper margin handling
- details element
- merge csstree into layout: first factor out tree traversal, then move
  build to before each layout
	* split each layout into pre, child pre, child post, post,
	* pre result: abort, continue
	* post result: redo, continue
	* probably box invalidation has to be reworked too, since we can't
	  just skip layout without checking children first (maybe move it to
	  the DOM?)
- partial rendering
	* element pointers must go from buffer.lines, so rewrite
	  getCursorStyledNode and findPrev/NextLink to use the box tree
		- this definitely needs an overflow box (maybe just add a
		  pass after layout() that inherits it from children?)
			* if that's not enough, even a separate tree...
			  (otherwise documents like `gitcha log' may take an
			  eternity to hit test)
	* inline layout's output must be flattened again, so that we can
	  deal with tall inline boxes (like the <plaintext> tag in
	  text/plain buffers)
- frame, iframe
- fix image issues
	* important: sizing bugs
	* z order
	* clipping
- grid
misc:
- animation (GIF) -> rework term first to support frame dropping
- pager tests? (how?)
- add a DOM -> man page converter so that we do not depend on pandoc
  for man page conversion
- unifont -> milkjf?
