Move nodestore to its own module

This separates nodestore from module/core and places it into its own module. The unity header was deleted, and all places that need to use nodestore types now "include what you use." Several other headers were added for "include what you use" to fix compile errors caused by missing includes.