Add Protocol to factory pattern
diff --git a/patterns/creational/factory.py b/patterns/creational/factory.py
index 8dba488d..a1beffa8 100644
--- a/patterns/creational/factory.py
+++ b/patterns/creational/factory.py
@@ -21,6 +21,14 @@
 *TL;DR
 Creates objects without having to specify the exact class.
 """
+from typing import Dict
+from typing import Protocol
+from typing import Type
+
+
+class Localizer(Protocol):
+    def localize(self, msg: str) -> str:
+        pass
 
 
 class GreekLocalizer:
@@ -41,10 +49,10 @@ def localize(self, msg: str) -> str:
         return msg
 
 
-def get_localizer(language: str = "English") -> object:
+def get_localizer(language: str = "English") -> Localizer:
 
     """Factory"""
-    localizers = {
+    localizers: Dict[str, Type[Localizer]] = {
         "English": EnglishLocalizer,
         "Greek": GreekLocalizer,
     }

This PR adds a Protocol to factory pattern, reinforcing the object types.

Resolve #402 