Merge

made the build support arduino libraries, added unit testing framework and improved the overall build