Add target name cache

- populate from ninja's target tool
- recalculate every time the ninja rules file changes
- do completing read of target to build when using cmake-project-build-custom-target