Feistel code up till now (it is kind of a mess)