If already initialized return the promise that was created by initialization

fao @aintgoin2goa 

because if you initialize and then immediately requests flags then you get to the resolved state way too soon :)