Organising Software in Active Environments