Search products on keyup

Be sure to cancel requests from a previous keyups as they're typing so if a previous keyups request comes in after a subsequent request, the previous one doesnt override the results