Try to implement customer API in traversal style
Fix API key check for customer
Refactory all views as traversal style
Fix test failures
Refactory, remove more duplicate code
Fix entity get missing bug