Rename mdd.{h,cpp} to forest.{h,cpp}

The classes they contain are named "Forest" now, so this is more consistent.
Split node class and forest class.
Add missing files.
Style changes
Fix dynarray default value constructor.

Accepted default as a parameter, but didn't actually use it.
Add UnaryOperation class
Move mdd_op_return_val into mddtypes header.
Minor type changes.
Separate complement operation into separate class.
Add set complement operator and restructure CMake.