Sure.
There is no "schedule" record: the schedule is a collection of events on the calendar Some of these events can be tied to projects, so lets start there.
Projects may have phases, but phases aren't required. An "Event" -- a record that shows up in the calendar -- maybe related to a Project and to a phase on that project. The event may also be linked to a contact and/or a resource.
Resources are things you want to schedule: they are the columns on the Schedule view and the rows on the Grid view of the calendar. They may be people, rooms, machines, etc.
Some events may be tagged as "milestones", this is to distinguish these events from some of the other minutia of a project like phone calls and meetings. You may wish to view a project's schedule on the gantt chart with this minutia removed-- showing only the milestones -- and there is an option on the filters tab of the calendar side bar to do that.
Events may be tagged as milestones in the Event Detail window that pops up when you edit an event on the calendar.
Events (and events tagged as milestones) may be created as part of a scripted process: a Process Template. These can be found on the "Process..." tab of the Settings screen. A process is really a template for a series of events that will be created when something happens: such as when a project's status changes.
You can learn more about Process Templates in the following articles:
http://www.seedcode.com/pmwiki/pmwiki.p ... sTemplates
http://www.seedcode.com/pmwiki/pmwiki.p ... eTemplates
Bids and Bid Items are related to a project and can be thought of as quotes. A project may have multiple bids, some of which may be tagged as "accepted". You can then turn these bids into invoices for that project.
I hope that helps,
John