exponential family distribution instantation w/ macro func
the distributions .py call the C implementations to avoid duplicated code