You can use a lifecycle management framework like embark or truffle.
Both allow you to automate the contract deployment on different stages:
Development stage, Staging stage, Live stage.
On each stage you can have different networks or even the handy testrpc tool:
testrpc is a Node.js based Ethereum client for testing and development. It uses ethereumjs to simulate full client behavior and make developing Ethereum applications much faster. It also includes all popular RPC functions and features (like events) and can be run deterministically to make development a breeze.
Also they integrate with automated testing for unit and integration testing of your contracts.
My Tip: try testrpc in combination with truffle. Development will speed up significantly.