Move instantiation_kind to its own header
Fix #include style
Add test for instantiation_kind