Because of lazy evaluation let first check if user needs touch capability and only if touch is set to true then lets sniff browser capabilities