How Device Detection Works