Write (more) guidelines for Tor coding best practices
We should extend our best practices guidelines in doc/HACKING with all/most of the following:
* Avoiding layer violations
* Fewer levels of block nesting
* Small functions
* Small files
* Few includes per file
* Smaller state objects
* Making new features compile-time optional modules
* incremental implementation and testing
* Fewer branches
* Fewer callers/callees per function
* "Leave it better than you find it"
* Well-bounded modules
* Fewer data dependencies
Some of these can be quantified; the ones that can be should have targets.
I'm putting an optimistically low time estimate on this one under the assumption that we will have only minimal debate. :)
issue