Added new decryption block (be careful - untested component). Changed CMakeFiles to reflect more modular design (not finished for the lib directory)
diff --git a/grc/CMakeLists.txt b/grc/CMakeLists.txt
index d1628cc..0baaac8 100644
--- a/grc/CMakeLists.txt
+++ b/grc/CMakeLists.txt
@@ -16,21 +16,13 @@
 # along with GNU Radio; see the file COPYING.  If not, write to
 # the Free Software Foundation, Inc., 51 Franklin Street,
 # Boston, MA 02110-1301, USA.
+
+add_subdirectory(decoding)
+add_subdirectory(decryption)
+add_subdirectory(demapping)
+add_subdirectory(receiver)
+add_subdirectory(misc_utils)
+
 install(FILES
-    gsm_block_tree.xml
-    receiver/gsm_input.xml
-    receiver/gsm_receiver.xml
-    misc_utils/gsm_bursts_printer.xml
-    receiver/gsm_fcch_burst_tagger.xml
-    receiver/gsm_sch_detector.xml
-    receiver/gsm_fcch_detector.xml
-    demapping/gsm_get_bcch_or_ccch_bursts.xml
-    demapping/gsm_universal_ctrl_chans_demapper.xml 
-    decoding/gsm_control_channels_decoder.xml
-    misc_utils/gsm_extract_system_info.xml
-    misc_utils/gsm_controlled_rotator_cc.xml
-    misc_utils/gsm_controlled_const_source_f.xml
-    receiver/gsm_clock_offset_control.xml
-    misc_utils/gsm_message_printer.xml
-    misc_utils/gsm_clock_offset_corrector.xml DESTINATION share/gnuradio/grc/blocks
+    gsm_block_tree.xml DESTINATION share/gnuradio/grc/blocks
 )
diff --git a/grc/decoding/CMakeLists.txt b/grc/decoding/CMakeLists.txt
new file mode 100644
index 0000000..36820f3
--- /dev/null
+++ b/grc/decoding/CMakeLists.txt
@@ -0,0 +1,22 @@
+# Copyright 2011,2012 Free Software Foundation, Inc.
+#
+# This file is part of GNU Radio
+#
+# GNU Radio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+#
+# GNU Radio is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Radio; see the file COPYING.  If not, write to
+# the Free Software Foundation, Inc., 51 Franklin Street,
+# Boston, MA 02110-1301, USA.
+
+install(FILES
+    gsm_control_channels_decoder.xml DESTINATION share/gnuradio/grc/blocks
+)
diff --git a/grc/decryption/CMakeLists.txt b/grc/decryption/CMakeLists.txt
new file mode 100644
index 0000000..29d86f4
--- /dev/null
+++ b/grc/decryption/CMakeLists.txt
@@ -0,0 +1,22 @@
+# Copyright 2011 Free Software Foundation, Inc.
+#
+# This file is part of GNU Radio
+#
+# GNU Radio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+#
+# GNU Radio is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Radio; see the file COPYING.  If not, write to
+# the Free Software Foundation, Inc., 51 Franklin Street,
+# Boston, MA 02110-1301, USA.
+
+install(FILES
+    gsm_decryption.xml DESTINATION share/gnuradio/grc/blocks
+)
diff --git a/grc/decryption/gsm_decryption.xml b/grc/decryption/gsm_decryption.xml
new file mode 100644
index 0000000..28a2b93
--- /dev/null
+++ b/grc/decryption/gsm_decryption.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0"?>
+<block>
+  <name>Decryption</name>
+  <key>gsm_decryption</key>
+  <import>import grgsm</import>
+  <make>grgsm.decryption($k_c)</make>
+
+  <param>
+    <name>Kc session key</name>
+    <key>k_c</key>
+    <type>int_vector</type>
+  </param>
+
+  <sink>
+    <name>bursts</name>
+    <type>message</type>
+  </sink>
+  <source>
+    <name>bursts</name>
+    <type>message</type>
+  </source>
+  
+</block>
diff --git a/grc/demapping/CMakeLists.txt b/grc/demapping/CMakeLists.txt
new file mode 100644
index 0000000..a057d19
--- /dev/null
+++ b/grc/demapping/CMakeLists.txt
@@ -0,0 +1,23 @@
+# Copyright 2011,2012 Free Software Foundation, Inc.
+#
+# This file is part of GNU Radio
+#
+# GNU Radio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+#
+# GNU Radio is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Radio; see the file COPYING.  If not, write to
+# the Free Software Foundation, Inc., 51 Franklin Street,
+# Boston, MA 02110-1301, USA.
+
+install(FILES
+    gsm_get_bcch_or_ccch_bursts.xml
+    gsm_universal_ctrl_chans_demapper.xml DESTINATION share/gnuradio/grc/blocks
+)
diff --git a/grc/gsm_block_tree.xml b/grc/gsm_block_tree.xml
index df463b2..d080175 100644
--- a/grc/gsm_block_tree.xml
+++ b/grc/gsm_block_tree.xml
@@ -25,6 +25,10 @@
       <block>gsm_universal_ctrl_chans_demapper</block>
     </cat>
     <cat>
+      <name>Decryption</name>
+      <block>gsm_decryption</block>
+    </cat>
+    <cat>
       <name>Decoding</name>
       <block>gsm_control_channels_decoder</block>
     </cat>
diff --git a/grc/misc_utils/CMakeLists.txt b/grc/misc_utils/CMakeLists.txt
new file mode 100644
index 0000000..48e8cae
--- /dev/null
+++ b/grc/misc_utils/CMakeLists.txt
@@ -0,0 +1,26 @@
+# Copyright 2011,2012 Free Software Foundation, Inc.
+#
+# This file is part of GNU Radio
+#
+# GNU Radio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+#
+# GNU Radio is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Radio; see the file COPYING.  If not, write to
+# the Free Software Foundation, Inc., 51 Franklin Street,
+# Boston, MA 02110-1301, USA.
+
+install(FILES
+    gsm_extract_system_info.xml
+    gsm_controlled_rotator_cc.xml
+    gsm_controlled_const_source_f.xml
+    gsm_message_printer.xml
+    gsm_clock_offset_corrector.xml DESTINATION share/gnuradio/grc/blocks
+)
diff --git a/grc/receiver/CMakeLists.txt b/grc/receiver/CMakeLists.txt
new file mode 100644
index 0000000..25f08cc
--- /dev/null
+++ b/grc/receiver/CMakeLists.txt
@@ -0,0 +1,27 @@
+# Copyright 2011,2012 Free Software Foundation, Inc.
+#
+# This file is part of GNU Radio
+#
+# GNU Radio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+#
+# GNU Radio is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Radio; see the file COPYING.  If not, write to
+# the Free Software Foundation, Inc., 51 Franklin Street,
+# Boston, MA 02110-1301, USA.
+
+install(FILES
+    gsm_input.xml
+    gsm_receiver.xml
+    gsm_fcch_burst_tagger.xml
+    gsm_sch_detector.xml
+    gsm_fcch_detector.xml
+    gsm_clock_offset_control.xml DESTINATION share/gnuradio/grc/blocks
+)