refactor element lifetime and use kobjects properly

Signed-off-by: Seth Jennings <sjenning@redhat.com>
rearrange code blocks to remove forward declarations

Signed-off-by: Seth Jennings <sjenning@redhat.com>
add old_addr attribute

Signed-off-by: Seth Jennings <sjenning@redhat.com>
fix sparse warning (static)

Signed-off-by: Seth Jennings <sjenning@redhat.com>
add TAINT_LIVEPATCH

Signed-off-by: Seth Jennings <sjenning@redhat.com>
fix list_add() misuse

Signed-off-by: Seth Jennings <sjenning@redhat.com>