check argument counts for functions
publicise arg validator to be reusable
remove factory from class template param

factory describes class constructor, but not the class itself
use CallFromV8 for js constructor
add factory selector
refactor: move reusable code
move user invokable template from detail