Have a look at pushbase and Push2 to look at Push source code.
A starter kit I use when bootstrapping projects: https://github.com/R9295/ableton-live-control-surface-starte...
To the best of my knowledge, this is as far as it goes. The blogs and articles I found are mostly out of date as Ableton has two versions of it's API and blogs mostly use v1. I wouldn't work on anything serious using v1 of the API
Many controllers, including Push use v2 as it's allegedly simpler and more featured. I talked to a person working at Native Instruments and they also told me that their experience with the API was a nightmare.