General Information Bottleneck Objectives and their Applications to Machine Learning