Handle type alias while implementing interface

Fix #277
Move IDE-agnostic code to core
Fix the issue with getting interface members
Merge pull request #374 from dungpa/type-instantiation

Handle type alias while implementing interface