Overdub module+Document changes

Overdub in working condition, new Document Model that can point to any
types of models.