first stab at ads

Do not merge yet,
For review only now
camelCase `adsInHead`, also, no globals