Text this: Optimal Design and Selection of Software Outsourcing Contracts in the Presence of Bilateral Moral Hazard.