Mathematical Programming Formulations for Practical Political Districting