Split off backend files into libsudoku

Let's prohibit these files from using any of the GUI-related code.

https://bugzilla.gnome.org/show_bug.cgi?id=579836