Add HList

Currently only has a few functions.