Bruce,
There is your problem, the Init of oApp is not completing and the object is not fully instantiated. Do not do the READ EVENTS in the INIT of the class. Instead give the app object a startup method, put your read events and menu stuff in that method, and then do this;
SET CLASSLIB TO test
oApp = CREATEOBJECT("APP")
oApp.StartUp()
You don't need the public variable as the read events will stop execution and prevent the oApp var from going out of scope on you.