
      var dom = {
        get: function(el) {
          if (typeof el === 'string') {
            return document.getElementById(el);
          } else {
            return el;
          }
        },
        add: function(el, dest) {
          var el = this.get(el);
          var dest = this.get(dest);
          dest.appendChild(el);
        },
        remove: function(el) {
          var el = this.get(el);
          el.parentNode.removeChild(el);
        }
      };
      
      var event = {
        add: function() {
          if (window.addEventListener) {
            return function(el, type, fn) {
              dom.get(el).addEventListener(type, fn, false);
            };
          } else if (window.attachEvent) {
            return function(el, type, fn) {
              var f = function() {
                fn.call(dom.get(el), window.event);
              };
              dom.get(el).attachEvent('on' + type, f);
            };
          }
        }()
      };
      
      
      
      
      
      /*
      
      
      Event.add(window, 'load', function() {
        var i = 0;
        Event.add('add-element', 'click', function() 
        {
        var el = document.createElement('p');
        el.innerHTML = 'Remove This Element (' + ++i + ')';
        dom.add(el, 'content');

        Event.add(el, 'click', function(e) {
            dom.remove(this);
          });
        });
      });
      

*/
