Make the build be non recursive

Also use the new external document interface