Renamed files and fixed warnings

linesensorI2C renamed to linesensor since it is the only linesensor
module.
Made the i2c module modularized to support multiple i2c buses.
Removed memory allocation issue.

In I2C, whatever is using the module will have a much better knowledge of
its space requirements. By using pointers instead of varadic functions, we
can move memory allocation to there, where it will me much easier and may
not need memory allocation at all.
Modified i2c module to support background reading

It now uses a simple state machine in the i2c interrupt handler to do
background readding. This can done with the added functions
I2CBackgroundSend and I2CBackgroundReceive.
Added wrappers for i2c error handling

This way error handlind does not require StellarisWare calls unless the
specific error is needed. The busy wait functions also return if an error
occurs.
Implemented a request function for i2c

The most common use case for i2c is requesting data through a send
followed by a sequntial recieve. By added a request function this can be
implemented in the background.
Reimplemented LineSensor module to match RASLib

Added background functions and a special function for bit-packed results
Now matches standardization of RASLib as it stands so far.
Currently untested.
Implemented line sensor in RASDemo and fixed Startup.s
Added 2-bit address as i2c initialization parameter

Up to 4 line sensors can be used on the same bus. This is done by solder
jumpers which specify the lowest 2 bits of the i2c address.
Added timeout interrupt and fixed small issues

This allows the i2c module to return quickly even under erronous
conditions.
Added timeout recovery code

The module now recovers from a timeout condition correctly. It can now be
used without the any connection and properly return an error after every
call. This has been tested with no attached sensors.
Merge branch 'master' into i2c_modifications

Conflicts:
	RASDemo/LineSensorDemo.c
	RASLib/inc/linesensor.h
	RASLib/output/RASLib.lib
	RASLib/src/linesensorI2C.c
Corrected line sensor ADC command

Basic functionality of i2c module and line sensor module has been tested.
Made syntactic changes as suggested in the pull request
Modified line sensor to take an I2C module and return errors

By taking an I2C module instead of pins, I2C buses can be properly shared.
Errors are also returned by the LineSensorReadArray function, for errors
with the basic LineSensorRead function, I2CSuccess can be called.
Merge pull request #18 from ut-ras/i2c_modifications

I2c modifications