(bug 48145) List rotator widget refactoring

Some code optimizations, added some more documentation.

Change-Id: Ia618622a05acea4a43e97c4c06b418bf98362246