Added supports year ranges.
Fixed problem with not recognized error with leading or ending colon.
Supports way to say that a facility is open (or closed) from a specified year without limit in the future (```2055/1 10:00-20:00```)
Added test for exception in year range. Don’t know why the test is failing …
Added support for years in parseMonthdayRange.
Fixed: "Feb 12:00-14:00" was interpreted as "Feb 12" + ":00-14:00".
test.js: Fixed report of total number of tests.
Added test 'Time ranges spanning midnight with date overwriting' which does not work as expected.

Same problem as 'Additional comments for closed with time ranges spanning midnight'.
Wrote test framework to export real values from OSM and try to parse them.
Optimized real_test.js.
Made it easy to add more opening_hours like tags to real_test.
real_test.js: Disabled values are now also ignored in the statistics.
real_test.js: Optimized.
Improved handling of not excepted syntax.
Optimized real_test.
real_test.js: Optimized.
Wrote script to search over all tags with regular expressions.

I am too bad in JavaScript to make this as I want it. I will probably switch to a different language for that part.
If someone knows how this script can be improved, it is in the git history …
Wrote regex_search.
regex_search: Optimized.
Tests are right, I was wrong.

The library does follow the rules. The thing I wanted can be expressed with 'Additional rules' (which are not implemented yet).
http://wiki.openstreetmap.org/wiki/Talk:Key:opening_hours#Closing_time_on_the_next_day