Added code, bug fixes and updates to existing code