Here's what I'd do..
1) Download the popcap framework and have a look at how they do it
2) Download blitzbasic and see how that works
3) Take a look at PTK and Torque other game engine docs
That will give you a general idea of how other engines are organized. You may even want to use one of them for your first game. In fact I recommend it. There's little reason to reinvent the wheel mucking around with UML and engine designs these days. There's too much inexpensive or free stuff available.