Performance and functionality improvements

A vertices neighbours now include vertices found recursively through its
subgraphs