Thread have produced a document about their protocol, Thread Stack Fundamentals, which I've been reading to try and understand more about how Thread works.
On page 5, the document explains that despite having no single point of failure, a Leader is needed to make decisions for the network:
A Router or Border Router can assume a Leader role for certain functions in the Thread Network. This Leader is required to make decisions within the network. For example, the Leader assigns Router addresses and allows new Router requests. The Leader role is elected and if the Leader fails, another Router or Border Router assumes the Leader role. It is this autonomous operation that ensures there is no single point of failure.
How is the Leader elected by the devices in the Thread network? Is there a set of criteria that are evaluated when the devices 'vote' for or select the Leader?