Added Push error checking.

Push will now throw an exception when it cannot push for one reason or another.