major re-design: implemented line class and Speak function