Lot's of changes...

Signed-off-by: Swizzy <swizzy@hotmail.co.uk>