Returning `undefined` from `getCurrentUsersArray` sounds a bit strange… wouldn't returning an empty array be a slightly better option? That may involve finding another strategy for checking that the retrieval operation has been performed already (ideally we'd need a `Users` object here).

Also be careful as `{} === {}` returns `false`.