Acknowledgements
Special thanks to Ken Levy for contributing the information on the Visual Class Designer.