Added more requirements; documented structures