diff --git a/MFlow.cabal b/MFlow.cabal
--- a/MFlow.cabal
+++ b/MFlow.cabal
@@ -1,5 +1,5 @@
 name: MFlow
-version: 0.2.0.7
+version: 0.2.0.8
 cabal-version: >=1.6
 build-type: Simple
 license: BSD3
@@ -7,13 +7,12 @@
 maintainer: agocorona@gmail.com
 stability: experimental
 Bug-reports: https://github.com/agocorona/MFlow/issues
-synopsis: Web app server for stateful processes with safe, composable user interfaces.
-description: A Web framework with some unique features thanks to the power of the Haskell language.
-             MFlow run stateful server processes; All the flow of requests and responses are coded by the programmer in a single function.
+synopsis: continuation-based Web framework without continuations.
+description: MFlow run stateful server processes; All the flow of requests and responses are coded by the programmer in a single function.
              Allthoug single request-response flows and callbacks are possible. Therefore, the code is
              more understandable. It is not continuation based. It uses a log for thread state persistence and backtracking forall
-             handling the back button. Because that the persistent state is small and can be synchronized. So
-             potentially that makes the MFlow architecture scalable
+             handling the back button. Because  the serialized state is small and can be synchronized,
+             potentially that makes the MFlow architecture scalable.
              .
              These processes are stopped and restarted by the
              application server on demand, including its execution state. Therefore session management
diff --git a/src/MFlow.hs b/src/MFlow.hs
--- a/src/MFlow.hs
+++ b/src/MFlow.hs
@@ -45,7 +45,8 @@
 
 
 {-# LANGUAGE  DeriveDataTypeable, UndecidableInstances
-              ,ExistentialQuantification, MultiParamTypeClasses
+              ,ExistentialQuantification
+              ,MultiParamTypeClasses
               ,FunctionalDependencies
               ,TypeSynonymInstances
               ,FlexibleInstances
@@ -299,8 +300,10 @@
 transient f=  unsafeIOtoWF . f -- WF(\s -> f t>>= \x-> return (s, x) )
 
 
-_messageFlows :: MVar (M.Map String Flow) 
-_messageFlows= unsafePerformIO $ newMVar M.empty 
+_messageFlows :: MVar (WorkflowList  IO Token ()) --  MVar (M.Map String (Token -> Workflow IO ()))
+_messageFlows= unsafePerformIO $ newMVar emptyFList
+  where
+  emptyFList= M.empty  :: WorkflowList  IO Token ()
 
 -- | add a list of flows to be scheduled. Each entry in the list is a pair @(path, flow)@
 addMessageFlows wfs=  modifyMVar_ _messageFlows(\ms ->  return $ M.union ms  (M.fromList $ map flt wfs))
diff --git a/src/MFlow/Cookies.hs b/src/MFlow/Cookies.hs
--- a/src/MFlow/Cookies.hs
+++ b/src/MFlow/Cookies.hs
@@ -187,7 +187,7 @@
 
 
 --extra :: Parser Char
-extra = satisfy (`Prelude.elem` "!*'(),/")
+extra = satisfy (`Prelude.elem` "!*'(),/\"")
 --
 --safe :: Parser Char
 safe = satisfy (`Prelude.elem` "$-_.") 
diff --git a/src/MFlow/Forms.hs b/src/MFlow/Forms.hs
--- a/src/MFlow/Forms.hs
+++ b/src/MFlow/Forms.hs
@@ -781,7 +781,7 @@
  st <- get
  let t = mfToken st
      u = tuser t
- if u== uname then return () else do
+ if u == uname then return () else do
      let t'= t{tuser= uname}
      moveState (twfname t) t t'
      put st{mfToken= t'}
diff --git a/src/MFlow/Wai.hs b/src/MFlow/Wai.hs
--- a/src/MFlow/Wai.hs
+++ b/src/MFlow/Wai.hs
@@ -109,7 +109,7 @@
                   
               Right GET -> let tail1 s | s==SB.empty =s
                                tail1 xs= SB.tail xs
-                           in return . urlDecode $  SB.unpack   . tail1 $ rawQueryString req1  -- !> (SB.unpack $ rawQueryString req1)
+                           in return . urlDecode $  SB.unpack   . tail1 $ rawQueryString req1  --  !> (SB.unpack $ rawQueryString req1)
               x ->  return [] 
      let req = case retcookies of
           [] -> req1{requestHeaders=  mkParams (input ++ cookies) ++ requestHeaders req1}  -- !> "REQ"
