JavaScript sources externalized, testing functions added
Add revised