Learning Bayesian networks from real data: algorithmic and tooling improvements for real-world applications