If I write a component and sell it to another programmer and they use my component in their hierarchy they will sell again will I be compensated?

Yes, you own that component and wherever it is referenced you will receive compensation for your contribution.

Do you make smart contracts reusable?

No, Fractalide is an application framework that locally executes applications that are programmed to interface with smart contracts, you might or might not have written, that are already deployed to the Cardano blockchain.