Caching for prepared statements and prepare action

Hi.  Thanks for the module, it's just what I was looking for.

I noticed when I was using it that I was getting a lot of warnings about re-preparing statements.  To stop that, I've added a cache for prepared statements.  The cache is just a simple map of statements to `PreparedStatement`s.  If a new statement is used with the `prepared` action, it gets prepared and added to the cache.

I've also added a new action to pre-prepare statements before use, so they can be prepared after the module is started.  It uses the `prepare` action and returns the same message as in "general response".