So what I have found is http://www.oblita.com/interception.html
It is a C program that intercepts input devices before windows receives the data. That allows both reprogramming of the buttons and device distinction of origin.
It does take over some windows driver/files to function.
My python is not anywhere good enough to write a wrapper for the dll library.
I have found and attempted to use some from https://github.com/dc740/AutoHotPy
It already has a wrapper but I am running in to errors (all access violation errors) with what I have tried.
Source code for the dll is also available if something would have to be rewritten.
If anyone would like to take on this challenge, I think everyone would be happy with the power of a plugin like this.