API Cleanup

Cleaned up API to make composition easier