Added comments and some small refactoring

getStatus returns new objects.

Signed-off-by: Clement Escoffier <clement.escoffier@gmail.com>