Main program written. Interface written. Implementation in progress.