Little bug on refreshElements() - sorting elements

A bug in the refreshElements() method caused malfunction in the subheader component. It applies an order over the self.items array based on the top property calculated in refreshPosition(item). 

The compare function returns a true/false value (a.top > b.top), but it should return an int value (a.top - b.top). Because of this the self.items array is misordered, self.current, self.prev and self.next are miscalculated and the subheader fails to acknowledge changes in sections.

Changing the compare function solves this issue