ENH+RF: make fa_key an argument (rather than use "node_indices"), plus some minor refactorings as suggested by @yarikoptic