Added small interface + loads of changes