#727 package repository extension now supports message based plugin API

Some of these methods can be moved into a different class, possibly. It seems that there is some commonality. For now, I think it makes sense here.