egpms module: Major redesign and code cleanup

Signed-off-by: Markus Pargmann <mpargmann@allfex.org>
egpms_ctl: adapt to new kernel module

Signed-off-by: Markus Pargmann <mpargmann@allfex.org>