First update. Basic functionality.