title: Is there a way to retrieve Nat position of a specific element from Shapeless HList?
body: <p>Given any <code>HList</code>, e.g. <code>1 :: "str" :: true :: HNil</code>, is there a (simple) way to find the <code>Nat</code> corresponding to the position of any specific list element, e.g. <code>f(hlist, true) ==&gt; Nat._2</code>? Can the same be done for the element <em>type</em> rather than the element itself, e.g. <code>f[String](hlist) ==&gt; Nat._1</code>? Assuming that each element/type occurs exactly once and its presence in the list is guaranteed.</p>