Add levels and extended formatting to Logger

I swear I wasn't planning on completely rewriting this class. It's probably over-engineered. Let me know if I should fix it or close the request.

Rundown of the changes:

* The logger can be instantiated with a program name and severity level:
  ```java
  new Logger("Some App", Logger.DEBUG);
  ```

* You add entries with the severity:
  ```java
  logger.debug("???");
  ```

* It prints:
  ```
  [Some App] 2012-01-01 23:59:59 --- DEBUG: ???
  ```

* PROFIT!