The basic problem was creating a place to quickly and easily shove config values and application wide state. CONSTANTS in the environment work ok, but can't be modified by the run time. What I ultimately wanted was memcache, with persistence.
So I created the entity_store gem, which allows you to drop a persistent key/value store into any rails app in about 5 minutes. After initialization, you can use commands like:
# Get key value.
e = EntityStore["testkey"]
e = EntityStore.testkey
e = EntityStore[:testkey]
# sets key named 'happened' to a Time object of now
EntityStore[:happened] = Time.now
EntityStore["happened"] = Time.now
EntityStore.happened = Time.now
Everything syncs instantly with the database, so state is preserved even if the server goes down. Additionally, it allows you to initialize with some defaults for keys - which works great for getting initial state going on your app.
Overall, packaging up and publishing the gem in a decent state online took longer than actually writing the functionality. Talk about yak shaving! But it was fun... hope someone else finds it useful.
http://eatenbyagrue.github.com/entity_storage/
Any ideas for the next version would be greatly appreciated.