The only reason this trade would be bad is if Tulo becomes a below-average hitter. Tulo has an additional 3 years on his contract compared to Reyes, but at least Tulo plays great defense. Reyes would have been a dumpster fire for 2016/2017.
Castro could be a decent starter, and Hoffman has great upside, but Tulowitzki is a premium player at a premium position.