Fixed ancestry state file. Added ancestry tests.
Ported descendant features and  added tests.
Merge branch 'Sprint'