Add support for map construction and pattern matching to HiPE

Extend the HiPE compiler to provide support for construction and deconstruction of maps by translating the four remaining BEAM instructions to ICode and to appropriate calls to the functions in the `maps' module. The goal of the translation is correctness at this point, and no attempt to do type-related optimizations at the ICode level has been made. (This will be the next step.) But with this pull request, the HiPE compiler now provides complete support for maps as per their implementation in 17.0.

This has been a team effort by four students: @margnus1, @noggan, @dsmccain, and @Pandahorse who were supervised by @kostis in the process.