Many Fixes
Still no clue how to use Interfaces