Add condition formulas

This is pretty feature complete and the places where I think there is more work to do is marked with TODO comments.

I tabified my branch so you wouldn't have to deal with spaces vs tabs (thank you notepad++).

Also, the Semantic Logger was removed completely.  That was some scope creep I ventured into.

One thing I am not happy with that warrants discussion is some condition formula types are reported for object types that they do not pertain to.  For instance, a Page Header and a Page Footer are both Section Areas.  I iterate over the members of that enum and display the value the getter returns.  However, the Page Clamp option is only relevant to the PageFooter object.  There are cases in the Crystal Reports UI where the condition formula option is present, but ghosted out and disabled.  For instance New Page After on a Footer.  There is not log to determine if the selection is prevented by the ui.

Like I said, for each parent object type (SectionArea, PageMargin, PrintOption, etc) I iterate over the enum of condition formula types.