Implementing History and Philosophy in Science Teaching: Strategies, Methods, Results and Experiences from the European HIPST Project