A life of struggle, a legacy of principle: Tribute to Bruce Kannemeyer