A Comprehensive Framework for Learning Declarative Action Models