libdw: Handle DWARF5 immutable, packed and shared in dwarf_peel_type.

Also update the documentation to explain that any type alias or modifier
that doesn't modify, change the structural layout or the way to access
the underlying type is peeled. Explicitly mention pointer and reference
types as examples of modifiers that don't obey that rule and so aren't
peeled.

Signed-off-by: Mark Wielaard <mark@klomp.org>
diff --git a/libdw/ChangeLog b/libdw/ChangeLog
index a74733c..d0b3f4c 100644
--- a/libdw/ChangeLog
+++ b/libdw/ChangeLog
@@ -1,5 +1,11 @@
 2017-07-26  Mark Wielaard  <mark@klomp.org>
 
+	* dwarf_peel_type.c (dwarf_peel_type): Handle DW_TAG_immutable_type,
+	DW_TAG_packed_type and DW_TAG_shared_type.
+	* libdw.h (dwarf_peel_type): Extend documentation.
+
+2017-07-26  Mark Wielaard  <mark@klomp.org>
+
 	* dwarf.h: Add DW_DEFAULTED_no, DW_DEFAULTED_in_class and
 	DW_DEFAULTED_out_of_class.