Factor snitch logic out into lib
Snitch lib spec