Implement Gadget.search and write first test case