add subtool in preparation for reworking the build substitution system