Initial checkin of working version