Now, all changes from iwl are integrated with this commit. It compiles. Real work begins now.