Round the note size up correctly.

ELF notes are 4-byte aligned, this fixes the size, which may not be a
multiple of 4, to round them up correctly. This stops pkg crashing on
armeb.
Only show the @dirrm warning once.

Issue:	#1036

Conflicts:
	libpkg/pkg_ports.c
Import from fossil 3 way merge code
Remove check on return, the caller will have to check to know what to do
Add a minimal regression test for 3 way merge
plug memory leak in 3way merge test
Do not add a trailing newline when not necessary in 3 way merge
Add more test for 3 way merge
Garbage collect now no-op code

Remove all notions of keep for files and directories
Remove all notions of try from directories
Adjust documentation
Remove garbage
pkg_file is only used internally no need for accessors for other cases pkg_printf is enough
pkg_dir is internal only, no need for accessors
pkg_group and pkg_user are internal only
Privatise lots of functions to limit the public API
Finish killing mtree
Sync libucl
Migrate absolutepath into the library renamed pkg_absolutepath
Rationalize path before adding it to the package
Fix plugin detection