Smart Contracts : What they are how they work