ertrie: adjusted the translation mechanisms in the tree
ertrie: added proper translation of addresses at the top level of the tree
Merge pull request #78 from interwq/master

Fixed the python script (set_smp_affinity)
ertrie: added a prototype page-table handling file that is _untested_...wanted to push it out for feedback now.

TODO: I'm realizing that the handling of the last level (leafs within
the tree) should probably be wrapped into the main ertrie.h code as
opposed to replicated badly in each implementation.
Merge branch 'master' of github.com:gparmer/Composite
ertrie updates: finally works again after further generalization.

The main change here is that I added functions for getting and setting
the leaf entries (i.e. not the leaf internal nodes, but the actual
entries within those leaf internal nodes).  By default, these entries
are just treated as pointers.
ertrie enhancements:  moved all access functions (including initfn and isnull) to operate on pointers, rather than return values

The previous commit (forgot to mention) enables the generic set and
get of the actual leaf values (e.g. dereference the pointers in the
default implementation).
ertrie enhancements: added parameterized internal node sizes.
ertrie update: patched a final calculation to take into account internal node sizes
ertrie update:  small comment
Added captbl initial implementation.

Still has a few too many branches, and uses the default access/modify
routines, but this is a decent first draft.

TODO:
- Remove branches for tree walking
- figure out how to get the redundant != NULL and < maxid checks out of the binary
- concurrency-safe modifications
- Capabilities of different sizes
First draft implementation (UNTESTED) of the captbl.

Lookup, add, expand, shrink.
Unit Tested captbl done.

Has multi-sized capabilities, and checking to make sure that the
correct size is used, and that allocated vs. freed is accurately
tracked.  Added code to the capability translation to return NULL or
the pointer depending on if it is allocated or not.  This uses
branch-free code based on bit operations, assuming twos complement
(i.e. 0-1 = MAX_UINT).
Unit tests for the captbl are in a good shape, and page-table code is rewritten.

Done:
- unit tests for captbl
- most functionality tested, but perhaps some edge cases are lurking
- rewrite of the page-table code, but still haven't tested

TODO:
- test the page-table code
- fuzz tests for the captbl code -- complicated by expand/shrink
- fuzz tests for the page-table code
- see if there is a way to modify the ertrie code to better accomodate some of the common patterns
Moved pgtbl.c->pgtbl.h, and got it compiling and a base-level of it working in the unit tests.

Still have to do real testing as this is basically a compile + trivial
functional test.
continued development of pgtbl.hy
Merge branch 'master' of https://github.com/gparmer/Composite