Had to remove the array type hint to support pimple as well as arrays. Added a bit of code to the abstractmodel constructor which throws an InvalidArgumentException if the container isnt either array or arrayaccess.