SortedMap that keeps build records by their build numbers, in the descending order
(newer ones first.)

The main thing about this class is that it encapsulates the lazy loading logic.
That is, while this class looks and feels like a normal SortedMap from outside,
it actually doesn't have every item in the map instantiated yet. As items in the map get
requested, this class retrieves them on demand, one by one.

The lookup is done by using the build number as the key (hence the key type is Integer).

This class makes the following assumption about the on-disk layout of the data:

Every build is stored in a directory, named after its number.

Some of the SortedMap operations are weakly implemented. For example,
AbstractMap.size() may be inaccurate because we only count the number of directories that look like
build records, without checking if they are loadable. But these weaknesses aren't distinguishable
from concurrent modifications, where another thread deletes a build while one thread iterates them.