Added timesSettled & resolve synchronous callbacks
Added
"timesSettled" is a new member of the state and it holds a count how many times load() was settled.
Fixed
Code like this crashed
promistate(id => {
return id ? fetch('...') ? null
})
because it was expected that the callback always returns a promise.