Improve code structure with new predicter class + support tuning of num buckets