major structural changes and bug fixing.
Made further Structural changes

Added simulation class. Also added decision sources interface and
several classes implementing it.