Finished implementing main features.