add in failure module
strict and loose failures implimented