Added user interface, renamed some packages and classes.