moved UnpackN instances to boilerplate, fixes #107

Also removed some duplication from Boilerplate.scala