Debouncing implemented

The debouncing samples the keypad multiple times and updates the kp_currentData only when the keypad hasnt changed in DEBOUNCE_MS ms.
added function prototype for debounce
added debounce time define

DEBOUNCE_MS is meant to define the allowed settling time in ms. Because the settling time is depending on KP_Delay that might not be true.

KP_DELAY * DEBOUNCE_MS = settling time  should be around 10ms
adjusted debounce time 

adjusted 
KP_DELAY * DEBOUNCE_MS = settling time in ms 
so that overall button detection time >= 200ms
intermediate comm on way to IK implementation
ik module added

IK is added as a module and the manager slightly modified to calculate
and execute IK instead of constantly moving a single joint. THis is
being controlled by a #define in manager.h
simple IK solution decision added

Need to solve how to send the position information from the IK module
to the servo.
ik module finished ?!

ik_message_s implemented...
git ignore change to include mac file
compilation errors resolved. msg_ & ik_mes alive

changed matlab (a^2) to pow(a,2) etc.
abs()->fabs().
The specific move task needs an extended message... I will extend the
used msg_message_s to resemble the current ik_message_s. The current
msg_message_s is a subset of ik_message_s so the rest of the code should
work afterwards...
Revert "compilation errors resolved. msg_ & ik_mes alive"

This reverts commit d9d114e42cabeee6835f0bf4f66c3f9359d49adc.
Revert "Revert "compilation errors resolved. msg_ & ik_mes alive""

This reverts commit e7e0cdb42fa65e5a239d38b2681a141d411b5dd4.
msg_message_s updated

in order to account for specific movement the
msg_message_s was updated to include a
sPLACE variable for the desired position of a servo
sTIME variable for a desired time allowed for a sigmoid move on the
servo
updated message tested - ok, IK module crashes...

The IK module seems to starve off other tasks running... it is running
within the manager manager module, so it might need a higher priority...
IK angles work! servoVals not yet

The IK works given the current position as hardcoded and produced the
expected angles for each joint. The conversion of angles to PWM values
for the servo still needs work.
Some function to input a goal position is obviously still missing.
bug fixes

all operations work now in rad, not degree
some minor filetype corrections
ServoVals work, specifMove in progress

The servoVals conversation works, but values need to be adjusted to
match the real robot.
Cant get the sigmoid move function to work, so started a specific move
by utilising the contd_move code. very crude and doesnt work yet...
revert back to messageDATA

Now again using the 32bit messageDATA slot of the messaging system.
The bit map consists of b0 = direction, b1-b4 = servo id and b5-b20 as
the pwm value minus its 50000 offset.

The sending side of the calc_IK has been modified, but the receiving
side in move_main_task needs adjusting to unshift and un mask
everything...
msgMessage back to former glory - ik finished

The ik now sends a message conforming to the initial msgMessage struct
consisting only of ID and DATA.
The bitmap is as follows:
<31:21 -PWM_SPEED><20:5 - PWM_val - offset><4:1 -ServoID><0 - Direction>
Merge remote-tracking branch 'origin/SpecificMovement' into ik

Conflicts:
	.gitignore
	manager.c
	messages.h
	movement.c