a rifle is a type of gun