introduce today layout
fix bug: use same id in forecast & today layout
conditionally load forecast layout type