Begin implementing emcoder-decoder logic.
Add comment and todo for the type aliases employed.
Add possible states.
Move state definitions inside the en-dec class.
Add state transiton logic.