Change project name in sources to match new name
Implement ultrasonics more generally

This is the first move in an expansion to simplify sensor interactions. Sensors
are now a class all to themselves, which will later be expanded to include
optical sensors. Ultrasonics are also implemented as an abstract class. Among
ultrasonics, there are different types. The first type is the one used in the
UltraPilot Mark I - the UltrasonicGeneralRanger, which reports distance over a
linearly scaled alert level.

Next, a new Ultrasonic will be implemented that polls for variability in
observations. This will be used to identify bad footing and obstacles in front
of the user's feet.
Update .gitignore
Remove vibration scalers from program

They're no longer needed, as each sensor reports its own alert level.
Use shared rather than builtin pointers

Ultrasonics had previously been using builtin pointers. Now I've implemented
them using smart pointers for the sake of good memory management.
Declare and initialize smart pointer in single step
Implement UltrasonicGroundSensor
Cleanup formating on references
Track submodule ``wiringPi``
Remove no longer valid scaling instructions
Add submodule for working with Pi camera
Fix UltraPilot being unstartable from CL without args
Merge branch 'rewrite-sensor-model' of github.com:erget/UltraPilot into rewrite-sensor-model
Merge branch 'rewrite-sensor-model'

Conflicts:
	Makefile
	src/main.cpp