Add some interfaces and split the code into several files
Add some comments
Merge branch 'master' of github:Pizaid/pizaid-controller

# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.