allow 'self lifetime in static trait methods
add test case
this appears to work
remove unused variables