Thanks for writing this. Saves a bit of trouble!
I think it might be more idiomatic for Stack.initialise to be Stack.empty. That would put it inline with Array.empty, Dict.empty and Set.empty from the core libraries.
I realise it is a breaking change and so I would understand if you might feel reluctant. Though I guess you could provide both and mark one as deprecated if desirable.