Financial engineering and Islamic contracts