more documentation on architecture