Add support for recursive target definitions

I.e. one target definition can contain another --target option.