I felt that logically it would make sense to split up the classes into their distinct groups and compile each group as a dll.

This discussion clarified my thinking - thanks to all for your comments.

Jack