Merging API restructure changes into master