'extend' and 'recurse' now work. Both improved also. Added support for names under type choices.