Perform basic sanity checks in signUp handler

This fixes Issue#69 recorded in the oBIX github repo. The root cause is
that if the href in the signUp device is an empty string, dirname returns
"." and such string should NOT be freed by the application or otherwise
it segfaults.

Before any node is added to the global DOM tree, sanity checks should have
been properly done on its href. Furthermore, as for the signUp handler, all
devices should go to the device lobby.

Valgrind tests passed when trying to sign up a device with following
invalid hrefs:
 . "", empty string
 . "/",
 . whitespace characters in the beginning, but they are allowed in the
   the middle of the href string
 . any '.' in any position
 . more than one consecutive slashes
 . outside of device lobby, such as "/obix/elsewhere/"

Instead of segfaults, oBIX server return an error contract gracefully.
added a lot of unit tests that test basic oBIX server functionality
Unit test: issue #69
Merge pull request #73 from Qingtao-Cao/devel

Perform basic sanity checks in signUp handler - 3rd try