This patch defines InitFiniSection synthetic section to convert
.[cd]tors to .{init,fini}_array.
Unlike https://reviews.llvm.org/D35509, this patch also adds
--no-ctors-in-init-array option so that you can choose to not merge
.[cd]tors into .{init,fini}_array.
Why in OutputSections.h?