EduSAT: A Pedagogical Tool for Theory and Applications of Boolean Satisfiability