clearer api methods, more docs, null callback bufgix, macro for enum