Finalcode

Merge final code phase branch to master