Three weird tricks to make your object-oriented codemore encapsulated, more reusable, and more maintainable.