refactores weird if-else logic
fix: new objects being pushed are now wrapped as new model instances

- modelCollection.push(rawObj)
- accounts for Array.push(ob1,ob2...) possibility