added core as dependency
moved the interfaces into core
fixed issue with external core