Forward Declarations & Header Cleanup

Took some advice from the programmers about and changed much of the code
to use forward declarations where possible. I also cleaned up the
headers so that they weren't the main source of includes, instead the
.cpp files actually did the including.
Hoping that this, plus making the common.h a pre-compiled header, will
cause much faster compile times.
Added latest build as a .rar

For Pete B.