Revert "cabal-freeze dependencies (closes #23)"

This reverts commit 5fa165bab0f173b2714cb025d6a2e043fba3f510.
Remove redundant files
Add DevelMain support
Listen on port specified by PORT env var
Run mueval with timeout specified by MUEVAL_TIMEOUT env var
Load jQuery over HTTPS if needed
Warn user if cookies or local storage is disabled

Issue #25

Warnings are sticked between the header and console. By default they
are hidden. JS codes checks local storage and cookies support and
shows the warnings accordingly.
Use lucid
Store cached expression in LRUCache

Previously evaluated expressions were stored in HashMap which was
emptied once in an hour by `expireCache` thread.

I propose a better solution which uses `Data.Cache.LRU.IO` from `lrucache` package.

Pros:

- No need to reevaluate often used expressions
- No need for expiring thread
- Harder to maliciously make the server run out-of-memory, however I am not sure
  if that was possible before
- Less code

Cons:

- Lookup and insertion time should take insignificantly longer because:

  1. LRUCache uses `Data.Map` underneath, if I understand correctly we
  get O(log(n)), instead of O(n) as it was with HashMap
  2. It has to check if the limit was reached and pop elements
  accordingly
- Memory usage per element is slightly higher as there is a need to keep
  track of when it was used
- additional dependency

LFU cache would suit better, but I couldn't find haskell implementation (I am
thinking about implementing it myself).

What do you think?
Port to lucid 2.0
Declare and locate run-time data files using Cabal
Add constraints file
Declare run-time data files using Halcyon
Declare git HEAD mueval as build-time dependency
Pass correct GHC_PACKAGE_PATH to mueval
Support deploying with Haskell on Heroku
Remove old deployment scripts
Add deployment-specific README