Invia SMS: Towards Practical and Automated Type-Based Program Analysis in Java