purchase api refactor and code style fixes
add ArrayLoaders merger