Community Sensing: Foundations and Applications