Qualified Types: Theory and Practice (Distinguished Dissertations in Computer Science)