Between complex licenses and the cloud, Microsoft, Oracle, and SAP have lots of ways to hike up prices. Here's how to fight back.