Added programs used in US experiments

These are the BasicUS and USPingTime programs. They are mentioned in the
experiment documentation.
Implemented the object recognition

The checkColor() method will take a color sample, compare it with the blue
block's average color (by calculating the angle between the color vectors)
and decide if it's a blue block based on that angle.

I added a function to calibrate the blue block's color.
Added unit testing for the Vector class

All unit testing must go in a different project. If you add the testing
classes in the DPMFinal project, you'll get errors when you try to run the
tests

The work-around I use is:
- create another project with the JUnit classes
- r-click the project
- choose Build path
- click Configure build path...
- choose Projects
- click Add
- add the DPMFinal project
- DONE

Now you can run the unit tests.
Note that the unit tests should probably not include anything related to
Lejos.
Added experiment software and fixed .gitignore

I put one single .gitignore in the root directory of this repo. Now all
files inside any folder called "bin" and all files ending in .class, .nxt,
.nxj will not be added when you do "git add *"
Changes to object recognition

Did some testing, tweaked som values. Works well for distances around
< 4 cm.
Merge branch 'master' of https://github.com/mattgray7/DPMFinal

Conflicts:
	DPMFinal/src/Slave/Lift.java
Took out main in ObjectRecog

It was used for testing.
Added bluetooth files (from teacher)

This package was provided by the teachers. I didn't write any of it. There
was a typo in StartCorner.java, where I changed getCooridinates to
getCoordinates().
Added the main .gitignore

It is located in the top-most folder, so all the sub-folders and
sub-projects will follow its "ignoring rules".
Correct .gitignore and cleaned .java files
ADD THE .gitignore, GOD DAMMIT
Deleted .class and added all .gitignore

I actually went and manually deleted the /bin folders and .class, .nxj and
.nxd files. I also added all the random .gitignore files in the projects,
since it seems git made them automatically.
Merge branch 'master' of https://github.com/mattgray7/DPMFinal into nick

Conflicts:
	DPMFinal/src/Master/BTSendController.java
	DPMFinal/src/Master/Localization.java
	DPMFinal/src/Master/Odometer.java
	DPMFinal/src/Master/Vector.java
	DPMFinal/src/Slave/Lift.java

Fixed all the merge problems (I think). The next step is to check that US
localization works, and nothing is broken.
Fixed (?) .gitignore

By adding * in front of the filetypes.

.class  ->  *.class
etc.
Added ObjectRecognition to Master

When I merged nick and master, ObjectRecognition appeared in both packages, so
I removed the one in Slave. However, git didn't register this. Now it
should be fixed.
Fixed ObjectRecognition

Added the sampleMain() and implemented checkDistance(). They fell through
when I did the merge.
Starting to test all components

Checking if I broke anything. Good so far.
Major changes were localization (not tested yet) and turning static
classes into normal classes (not completely checked yet).
- ObjectRecognition calibration is OK.
- Main function is OK.
- All variables in BTSendController seem OK.
Create README.md

Just because it asked me to.
Fixed program termination

Pressing a button at the end of BTSendController.execute() will actually
close the program.

How this was done (at the end of execute):

...
...
Button.waitForAnyPress();
System.exit(0);
Merge branch 'nick' of https://github.com/mattgray7/DPMFinal into nick