Start to Tests, Grunt, Karma, Concatenation, Bower, Node server instead of php.

I did a lot here, and while I didn't change the code of the directive at all, I did change its organization a lot. It is now broken into separate files and there is a grunt task to concatenate them for distribution. The distributed file is in the root directory. It is pdx-tree.js, I should probably also add a minify task and create a pdx-tree.min.js.

I was intending to test all the directives, but I had trouble finding a way to do it. The scopes and element compilation made things tricky. Perhaps with your understanding of how and why the scopes interact as they do, you'll be able to pick up my starter tests and figure it out.

- Grunt Karma to run tests.
- Wrote full tests for PdxTreeChildManagerService
- Broke apart objects into multiple files.
- Grunt concat to build them into a distributable source
- Jshint to ignore things like 'describe' and 'angular'
- Changed the example to work off of a grunt-contrib-connect server
- Wrote basic documentation in the README.md for development tasks.
- Updated bower config to get us closer to a publishable package.