implement ProjectIntance.AddItem().
Fix possible NRE on null Location.
Fix load error with related to new attributes since 4.0.
slightly changed Csc task test project structure so that it could at least launch compiler.
Show better error location in InvalidProjectFileException.
MaxNodeCount is documented as 1 by default. (not in use so far anyways...)
Fix bogus expression tokenizer that failed at parenthesized expressions with And/Or.
No need to fill UsingTaskElement content here. Load() takes care of it.
make locations internal in NET_4_0.
handle Target/@DependsOnTargets. To make it possible, some code reorganization.
Fix ContinueOnError evaluation (was almost always true). Add more logging.
Evaluate and include property and item on <Target> element before running tasks.

BuildEngine4.BuildTarget() became too lengthy, so split it.