migrate re-usable bits to use tools. add face selection