A Survey of Architectures for Adaptive Hypermedia