Another attempt to create a large multipurpose library with an object-oriented interface.