Allow declared implementation to be overridden
Tests for last commit: 82d0d782e1300c9e688d56074d611883e31174a7