Move rarely used predicated to Types module
Hide type synonims from the main API
Move BEncode class to separate module
Hide some modules on package level
Add Get monad
Cleanup