Initialize models and collections with attributes instead of adding the attributes after initialization, also allow passing through options