all functionality implemented
added some web stuff