add interface and implementation skeleton.