(Hybrid) Improving performance by eliminating unnecessary speller creation and deletion

This is a hybrid solution between #15 and #16 that retains the performance benefits of the original fix.

I also fixed a memory leak: the `@config` memory allocated in `Speller#initialize` was never being freed. It's now being freed in the finalizer or when the user explicitly calls `#close`.
I'll move both `.finalizer` and `.open` up above `#initialize`.