Split api.py into multiple files

This change splits api.py into multiple files for
easier readability and modification.

Much of the Overcloud-equivalent code in tuskar.py will
later be refactored into heat.py once the api is
updated to differentiate between a plan and a stack.

Change-Id: Ie61a86125cf4dc8c8022f95e91fe0faccbf0af56