So, libtool library versions are described by three integers:

current
    The most recent interface number that this library implements.

revision
    The implementation number of the current interface.
    
age
    The difference between the newest and oldest interfaces that this library
    implements. In other words, the library implements all the interface
    numbers in the range from number current - age to current. 


Rules to change the numbers:

1. If you have changed any of the sources for this library, the revision
   number must be incremented. This is a new revision of the current
   interface.

2. If the interface has changed, then current must be incremented, and
   revision reset to `0'. This is the first revision of a new interface.

3. If the new interface is a superset of the previous interface (that is, if
   the previous interface has not been broken by the changes in this new
   release), then age must be incremented. This release is backwards
   compatible with the previous release.

4. If the new interface has removed elements with respect to the previous
   interface, then you have broken backward compatibility and age must be
   reset to `0'. This release has a new, but backwards incompatible interface. 
